Compare commits

...

2 Commits

Author SHA1 Message Date
8df4d6448d build: add cd
All checks were successful
Deploy MinIO Explorer / deploy (push) Successful in 1m32s
2025-09-05 11:37:31 +02:00
2aff93fb92 feat: add readme 2025-09-05 11:32:23 +02:00
2 changed files with 120 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
name: Deploy MinIO Explorer
on:
push:
branches: [main]
create:
tags:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install MinIO Client
run: |
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/
- name: Prepare files for production
run: |
# Créer un dossier temporaire pour les fichiers de production
mkdir -p dist
# Copier style.css et script.js sans modification
cp style.css dist/
cp script.js dist/
# Traiter index.html : supprimer la section de développement
# Utiliser awk pour supprimer les lignes 15-25 (section dev-form)
awk 'NR < 15 || NR > 25' index.html > dist/index.html
# Vérifier que les fichiers sont créés
ls -la dist/
- name: Configure MinIO Client
run: |
mc alias set minio ${{ secrets.MINIO_ENDPOINT }} ${{ secrets.MINIO_ACCESS_KEY }} ${{ secrets.MINIO_SECRET_KEY }}
- name: Deploy to MinIO
run: |
# Déployer les fichiers sur le bucket
mc cp dist/index.html minio/${{ secrets.MINIO_BUCKET }}/
mc cp dist/style.css minio/${{ secrets.MINIO_BUCKET }}/
mc cp dist/script.js minio/${{ secrets.MINIO_BUCKET }}/
# Vérifier le déploiement
mc ls minio/${{ secrets.MINIO_BUCKET }}/

68
README.md Normal file
View File

@@ -0,0 +1,68 @@
# MinIO Explorer
Application web simple pour explorer les fichiers d'un bucket MinIO, style "Index of" Apache.
## Fonctionnalités
- 🌐 **Navigation en lecture seule** dans l'arborescence MinIO
- 🔍 **Prévisualisation** des fichiers (images, texte, markdown, PDF, vidéo, audio)
- 📋 **Copie des liens directs** vers les ressources
- 📱 **Interface responsive** (desktop et mobile)
-**Auto-configuration** depuis l'URL de déploiement
- 🗂️ **Auto-ouverture** des fichiers index.rst
## Structure
```
/
├── index.html # Interface principale
├── style.css # Styles responsive type "Index of"
├── script.js # Logique de navigation et parsing XML
├── CLAUDE.md # preuve de la flemme
└── README.md # Ce fichier
```
## Utilisation
### Déploiement
1. Placez les fichiers à la racine du bucket MinIO
2. Configurez le bucket en lecture publique
3. Activez CORS sur MinIO
4. Accédez via `https://votre-minio.com/votre-bucket/index.html`
### Mode développement
L'interface inclut un formulaire pour tester différentes URLs MinIO directement depuis le navigateur.
## Prérequis MinIO
- Bucket accessible publiquement en lecture
- Configuration CORS appropriée :
```
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET
Access-Control-Allow-Headers: *
```
## Types de fichiers supportés
- **Images** : JPG, PNG, GIF, SVG, WebP...
- **Texte/Code** : TXT, JSON, XML, HTML, JS, Python...
- **Documentation** : Markdown (.md), reStructuredText (.rst)
- **Médias** : PDF, MP4, MP3...
## Navigation
- Clic sur dossier → navigation
- Clic sur fichier → prévisualisation
- Bouton "Copier lien" → lien direct dans le presse-papier
- Lien ".." → remontée dans l'arborescence
## Notes techniques
- **Frontend only** : HTML/CSS/JavaScript vanilla
- **API MinIO** : Appels directs à l'API REST ListBucket
- **Pas de serveur** : hébergé statiquement dans le bucket
- **Historique navigateur** : navigation avec URL fragments (#/path)