Agelgil Primer Healthy Recipe Hub est une plate-forme conviviale qui permet aux personnes ayant une gamme de demandes alimentaires pour trouver, partager et accéder à une vaste bibliothèque d'offres maison avec des recommandations de recettes personnalisées basées sur les besoins alimentaires individuels et les conditions de santé.
Pour exécuter ce projet, vous devrez ajouter les variables d'environnement suivantes à votre fichier .env sur /api/.env._development | production]
Besoin d'ajouter .env.development pour fonctionner localement
Besoin d'ajouter .env.production pour la production
DATABASE_URL : Cette variable d'environnement stocke la chaîne de connexion à votre base de données MongoDB. Par exemple, il pourrait indiquer un cluster MongoDB ATLAS (par exemple, mongodb+srv://<username>:<password>@cluster0.mongodb.net/myDatabase ) ou une instance MongoDB locale à des fins de développement.
MONGOMS_SYSTEM_BINARY : Cette variable spécifie le chemin du binaire du système MongoDB (par exemple, mongod.exe ). Il est principalement utilisé dans les scénarios de test qui nécessitent MongoDB, en particulier lors de l'utilisation de versions comme MongoDB V6.0.9 .
APP_PORT : le numéro de port sur lequel votre application s'exécutera. Par exemple, dans un environnement local, cela pourrait être défini sur 3000 pour une application Node.js ou tout autre numéro de port en fonction de la configuration du serveur.
REDIS_URL : la chaîne de connexion pour votre serveur redis. Redis est généralement utilisé pour la mise en cache et les fonctionnalités en temps réel. Par exemple, redis://localhost:6379 pour une instance locale ou redis://<username>:<password>@redis.cloudprovider.com:6379 pour un service redis basé sur le cloud.
USER_SECRET , MODERATOR_SECRET , CONTROLLER_SECRET : ce sont les touches secrètes JWT (token Web JSON) utilisées pour signer et vérifier les jetons pour différents rôles au sein de votre application. Chaque rôle (utilisateur, modérateur et contrôleur) a son propre secret pour la sécurité.
USER_REfRESH_SECRET , MODERATOR_REfRESH_SECRET , CONTROLLER_REfRESH_SECRET : ces secrets sont spécifiquement utilisés pour générer des jetons de rafraîchissement, qui permettent aux utilisateurs d'obtenir de nouveaux jetons d'accès sans redémarrer.
CALORIENINJAS_API_KEY : cette clé permet d'accéder à l'API CalorienInjas
CIPHERIV_SECRET_KEY : une clé utilisée pour crypter et décrypter des liens partageables sensibles
SHAREABLE_LINK_BASE_URL : Cette variable définit l'URL de base utilisée pour générer des liens partageables dans votre application (par exemple, http://myapp.com/page?id=1 )
DATASAX_ASTRA_TOKEN : Le jeton utilisé pour s'authentifier avec la base de données DataSax Astra. DATASAX_ASTRA_DB_NAME : le nom de la base de données que vous utilisez sur DataStax Astra. DATASAX_ASTRA_API_Endpoint : L'API Endpoint pour communiquer avec DataSax Astra (par exemple, https://<database-id>-<region>.apps.astra.datastax.com ).
NEO4J_URL : L'URL de connexion à votre instance de base de données NEO4J. Cela suit généralement le bolt:// protocole (par exemple, bolt://localhost:7687 pour une instance locale). NEO4J_USER : le nom d'utilisateur utilisé pour l'authentification Neo4j. NEO4J_PASSWORD : Le mot de passe utilisé pour l'authentification Neo4j. NEO4J_DATABASE : le nom de la base de données spécifique utilisée dans Neo4j.
Cloner le projet
git clone https://github.com/kaleabteweld/Agelgil-primer-healthy-recipe-hub-backendAller au répertoire du projet
cd Agelgil-primer-healthy-recipe-hub-backendInstaller des dépendances
npm installDémarrer le serveur de développement (définira Node_env sur le développement)
npm run devPour exécuter des tests, exécutez la commande suivante
npm run test