Début du projet

This commit is contained in:
LAINEY Grégory committed 2026-09-25 11:02:14 +02:00
commit 43b1f166d7
28 files changed
+4284

No files matched your search

+95
View File
@@ -0,0 +1,95 @@
# 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).
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.