96 lines
2.6 KiB
Markdown
96 lines
2.6 KiB
Markdown
# Mon Poulailler
|
|
|
|
Application web simple pour gérer un poulailler : animaux, ponte, couvage, archives.
|
|
|
|
Conçue pour être **lisible par un débutant** : peu de fichiers, JavaScript classique, données en JSON.
|
|
|
|
## Prérequis
|
|
|
|
- [Node.js](https://nodejs.org/) (version 18 ou plus), **ou**
|
|
- [Docker](https://www.docker.com/) + Docker Compose
|
|
|
|
## Démarrage rapide (sans Docker)
|
|
|
|
```bash
|
|
npm install
|
|
npm start
|
|
```
|
|
|
|
Ouvre ensuite : [http://localhost:3000](http://localhost:3000)
|
|
|
|
## Démarrage avec Docker
|
|
|
|
```bash
|
|
docker compose up --build
|
|
```
|
|
|
|
Puis : [http://localhost:3000](http://localhost:3000)
|
|
|
|
Pour arrêter :
|
|
|
|
```bash
|
|
docker compose down
|
|
```
|
|
|
|
## Compte par défaut
|
|
|
|
| Login | Mot de passe | Profil |
|
|
| --- | --- | --- |
|
|
| `admin` | `admin123` | administrateur |
|
|
|
|
Change ce mot de passe en créant un nouveau compte admin, puis en n'utilisant plus celui-ci (ou en modifiant le fichier JSON).
|
|
|
|
## Utilisation
|
|
|
|
1. Se connecter avec le compte admin
|
|
2. Créer des comptes utilisateurs (menu **Comptes**, réservé à l'admin)
|
|
3. Ajouter des poules / coqs depuis la page d'accueil
|
|
4. Ouvrir une fiche animal pour modifier, enregistrer ponte / couvage, ou archiver
|
|
5. Consulter les **Archives** pour les animaux décédés
|
|
|
|
## Structure du projet
|
|
|
|
```
|
|
poupoule/
|
|
├── server.js # Serveur Node.js (routes API)
|
|
├── lib/donnees.js # Lecture / écriture des fichiers JSON
|
|
├── data/ # Données persistantes (JSON)
|
|
│ ├── utilisateurs.json
|
|
│ ├── animaux.json
|
|
│ ├── periodesPonte.json
|
|
│ └── periodesCouvage.json
|
|
├── uploads/ # Photos des animaux
|
|
├── public/ # Interface (HTML, CSS, JS)
|
|
│ ├── index.html # Liste + statistiques
|
|
│ ├── animal.html # Fiche détaillée
|
|
│ ├── archives.html
|
|
│ ├── comptes.html
|
|
│ ├── connexion.html
|
|
│ ├── css/style.css
|
|
│ └── js/ # Scripts par page
|
|
├── Dockerfile
|
|
├── docker-compose.yml
|
|
└── cahierDesCharges.md
|
|
```
|
|
|
|
## Sauvegarde des données
|
|
|
|
Les informations sont stockées dans le dossier `data/` (fichiers JSON) et les photos dans `uploads/`.
|
|
|
|
Pour sauvegarder : **copie ces deux dossiers**.
|
|
|
|
Avec Docker, ils sont montés en volumes : ils restent sur ta machine même si le conteneur est reconstruit.
|
|
|
|
## Technologies
|
|
|
|
| Couche | Choix |
|
|
| --- | --- |
|
|
| Front | HTML, CSS, JavaScript (sans framework) |
|
|
| Back | Node.js + Express |
|
|
| Données | Fichiers JSON |
|
|
| Auth | Sessions + mots de passe hachés (bcrypt) |
|
|
|
|
## Documentation métier
|
|
|
|
Voir [cahierDesCharges.md](cahierDesCharges.md).
|