ENISE / README.md
tiffank1802
fix: Add proper HF Spaces configuration with quoted sdk_version and space.yaml
0785de0
---
title: ENISE Site
emoji: 🎓
colorFrom: blue
colorTo: purple
sdk: docker
sdk_version: "latest"
python_version: "3.12"
app_file: app.py
pinned: false
---
# Site ENISE - Django + Appwrite Cloud
Site Django 5 déployé sur Hugging Face Spaces avec Appwrite Cloud comme backend cloud-natif.
## Configuration Appwrite
### 1. Créer le projet
- Se connecter à [Appwrite Cloud](https://cloud.appwrite.io/)
- Créer un nouveau projet
### 2. Créer la base de données
- Aller dans **Databases****Create Database**
- Nommer la base `cours_enise`
### 3. Collections
Créer les 3 collections suivantes :
#### `modules`
| Attribut | Type |
|----------|------|
| title | string |
| code | string |
| description | string |
| year | integer |
| semester | string |
#### `sections`
| Attribut | Type |
|----------|------|
| moduleId | string |
| title | string |
| order | integer |
#### `resources`
| Attribut | Type |
|----------|------|
| moduleId | string |
| sectionId | string |
| title | string |
| type | string |
| url | string |
| description | string |
| order | integer |
### 4. Permissions
Pour chaque collection :
- Ouvrir l'onglet **Settings****Permissions**
- Ajouter le rôle `any` avec permission `read`
### 5. Données示例
**Module :**
- title: `Énergétique – Thermique`
- code: `4A-S7-ET`
- year: `4`
- semester: `S7`
**Sections :**
- Cours (order: 1)
- TD (order: 2)
- TP (order: 3)
**Resources :**
- Pointer vers PDF stockés dans Appwrite Storage ou Google Drive
## Variables d'environnement
Copier `.env.example` vers `.env` et remplir :
```bash
cp .env.example .env
```
## Installation
```bash
npm install
npm run dev
```
## Déploiement
Le site sera accessible à : `https://tiffank1802.github.io/enise-site-2/`
**Étapes finales pour activer le déploiement :**
1. Aller sur https://github.com/tiffank1802/enise-site-2/settings/pages
2. Sous "Build and deployment", sélectionner "GitHub Actions"
3. Le workflow se lancera automatiquement au prochain push
**Pour déclencher le premier déploiement :**
```bash
git add .
git commit -m "Trigger deployment"
git push origin main
```
## Structure du projet
```
src/
├── appwrite.js # Configuration Appwrite
├── App.jsx # Point d'entrée
├── main.jsx # Mount React
├── index.css # Styles
└── components/
├── ModulePage.jsx # Page principale du module
├── SectionList.jsx # Navigation par section
└── ResourceList.jsx # Liste des ressources
```