Ce projet est une application Node.js utilisant TypeScript et Express pour créer un serveur API REST. Il est structuré avec des dossiers pour les contrôleurs, les services, les modèles, et utilise Jest pour les tests unitaires.
Assurez-vous d'avoir installé les éléments suivants sur votre machine :
-
Clonez le projet :
git clone https://github.com/la-sarita/420-514_A24.git cd 420-514_A24/mon-projet-express-typescript -
Installez les dépendances du projet :
npm install
Créez un fichier .env à la racine du projet pour stocker les variables d'environnement, par exemple :
PORT=3000
DATABASE_URL=postgres://user:password@localhost:5432/dbnameVoici quelques scripts importants que vous pouvez exécuter avec npm :
-
Démarrer le projet en développement :
npm run start
Utilise
ts-node-devpour démarrer le serveur avec hot-reload. -
Compiler TypeScript en JavaScript :
npm run build
Compile les fichiers TypeScript dans le dossier
dist/. -
Exécuter les tests unitaires :
npm run testExécute les tests avec Jest.
Voici la structure des dossiers du projet :
├── src/
│ ├── controllers/ # Contrôleurs Express pour gérer les routes
│ ├── interfaces/ # Interfaces TypeScript
│ ├── middlewares/ # Middlewares Express
│ ├── models/ # Modèles de données
│ ├── routes/ # Définition des routes Express
│ ├── services/ # Services pour la logique métier
│ ├── utils/ # Utilitaires du projet
│ ├── app.ts # Configuration de l'application Express
│ ├── server.ts # Point d'entrée pour démarrer le serveur
├── tests/ # Tests unitaires avec Jest
├── dist/ # Fichiers compilés (générés après la compilation)
├── package.json # Fichier de configuration des dépendances et scripts
├── tsconfig.json # Configuration de TypeScript
└── README.md # Documentation du projet
-
Démarrez le serveur avec la commande suivante :
npm run start
-
Par défaut, le serveur est disponible sur http://localhost:3000.
Pour exécuter les tests unitaires avec Jest, utilisez la commande suivante :
npm run testLes tests se trouvent dans le dossier tests/.
- Forkez ce dépôt
- Créez votre branche de fonctionnalité (
git checkout -b feature/nouvelle-fonctionnalité) - Commitez vos modifications (
git commit -m 'Ajouter une nouvelle fonctionnalité') - Poussez votre branche (
git push origin feature/nouvelle-fonctionnalité) - Ouvrez une Pull Request
Ce projet est sous licence MIT.