Technologies Utilisées
Une stack moderne et performante pour une expérience utilisateur optimale
Backend
-
Node.js
-
Express
-
PostgreSQL
-
Prisma ORM
-
Authentification JWT
Frontend
-
React (Vite)
-
Tailwind CSS
-
Axios
Autres
-
API REST
-
JWT Cookies
-
Docker (optionnel)
Ce que ScheduleApp vous offre
Une expérience complète de gestion de planning
Authentification sécurisée
Inscription et connexion utilisateur avec protection des routes et gestion des rôles
CRUD complet
Gestion complète des rendez-vous (création, lecture, mise à jour, suppression)
Gestion des créneaux
Configuration flexible des disponibilités et plages horaires
Affichage quotidien
Visualisation claire des rendez-vous du jour avec mise à jour en temps réel
Vue calendrier
Navigation intuitive par semaine/mois avec drag & drop
Interface responsive
Adaptation parfaite à tous les écrans et appareils
Structure des Données
Modèles Prisma bien définis pour une gestion efficace
User
- id String @id @default(uuid())
- nom String
- email String @unique
- motDePasse String
- rôle Role @default(USER)
Appointment
- id String @id @default(uuid())
- titre String
- description String?
- date DateTime
- utilisateur User @relation(fields: [userId], references: [id])
Schedule
- id String @id @default(uuid())
- jourSemaine WeekDay
- heureDébut DateTime
- heureFin DateTime
- utilisateur User @relation(fields: [userId], references: [id])
Structure du Projet
Une organisation claire pour un code maintenable
Arborescence des fichiers
Fullstack
scheduleapp/
├── backend/
│ ├── models/ # Schémas Prisma
│ ├── routes/ # Définition des routes API
│ ├── auth/ # Authentification JWT
│ ├── controllers/ # Logique métier
│ ├── prisma/schema.prisma # Modèles de données
│ └── package.json
├── frontend/
│ ├── public/ # Assets statiques
│ ├── src/
│ │ ├── pages/ # Pages de l'application
│ │ ├── components/ # Composants réutilisables
│ │ ├── services/ # Appels API
│ │ └── App.jsx # Point d'entrée
│ └── package.json
├── README.md
└── docker-compose.yml # Configuration Docker (optionnel)
Exemple d'écran d'acceuil
Voici à quoi ressemble l'écran de ScheduleApp :
Exemple du menu de connexion
Exemple d'écran d'acceuil
Lancer le Projet en Local
Commandes pour démarrer le développement
Backend
# Se positionner dans le dossier backend cd backend # Installer les dépendances npm install # Configurer la base de données npx prisma migrate dev # Démarrer le serveur de développement npm run dev
Frontend
# Se positionner dans le dossier frontend cd frontend # Installer les dépendances npm install # Démarrer l'application npm run dev # L'application sera disponible sur http://localhost:5173
Prêt pour la Production
ScheduleApp est 100% fonctionnelle en local avec une architecture propre, modulaire et évolutive. Le code suit les meilleures pratiques et est entièrement documenté.
L'application est prête pour l'hébergement en production. Le déploiement a été reporté en raison des limitations des services gratuits (veille automatique, performances réduites). Dès qu'un budget sera disponible, ScheduleApp pourra être déployée sur une infrastructure stable et performante.
Intéressé par ScheduleApp?
Pour plus d'informations, une démonstration ou pour soutenir le projet