Agelgil Primer Healthy Conecipe Hub是一个用户友好的平台,可使饮食需求的人能够根据个人饮食需求和健康状况提供一系列饮食需求的人,以找到,共享和访问广泛的自制报价库,并提供个性化食谱建议。
要运行此项目,您将需要在 /pi/.env.上的.env文件中添加以下环境变量。生产]
需要添加.env.开发以在本地运行
需要添加.env。生产生产
DATABASE_URL :此环境变量将连接字符串存储到MongoDB数据库。例如,它可以指向mongodb atlas群集(例如, mongodb+srv://<username>:<password>@cluster0.mongodb.net/myDatabase )或用于开发目的的本地mongodb实例。
MONGOMS_SYSTEM_BINARY :此变量指定了MongoDB系统二进制的路径(例如, mongod.exe )。它主要用于测试需要mongoDB的方案,尤其是在使用MongoDB v6.0.9之类的版本时。
APP_PORT :您的应用程序将运行的端口号。例如,在本地环境中,可以根据服务器配置设置为Node.js应用程序或任何其他端口号的3000 。
REDIS_URL :Redis服务器的连接字符串。 REDIS通常用于缓存和实时功能。例如, redis://localhost:6379对于本地实例或redis://<username>:<password>@redis.cloudprovider.com:6379用于基于云的redis服务。
USER_SECRET , MODERATOR_SECRET , CONTROLLER_SECRET :这些是JWT(JSON Web令牌)的秘密键,用于签名和验证您的应用程序中的不同角色。每个角色(用户,主持人和控制器)都有自己的安全秘诀。
USER_REfRESH_SECRET , MODERATOR_REfRESH_SECRET , CONTROLLER_REfRESH_SECRET :这些秘密专门用于生成刷新代币,允许用户获得新的访问令牌而无需重新设置。
CALORIENINJAS_API_KEY :此键允许访问Calorieninjas API
CIPHERIV_SECRET_KEY :用于加密和解密敏感共享链接的键
SHAREABLE_LINK_BASE_URL :此变量定义用于生成应用程序中共享链接的基本URL(例如, http://myapp.com/page?id=1 ://myapp.com/page?id=1)
DATASAX_ASTRA_TOKEN :用于使用DataStax Astra数据库进行身份验证的令牌。 DATASAX_ASTRA_DB_NAME :您在DataStax Astra上使用的数据库的名称。 DATASAX_ASTRA_API_Endpoint :与dataStax astra通信的API端点(例如, https://<database-id>-<region>.apps.astra.datastax.com )。
NEO4J_URL :与您的neo4j数据库实例的连接URL。这通常遵循bolt://协议(例如, bolt://localhost:7687对于本地实例)。 NEO4J_USER :用于Neo4J身份验证的用户名。 NEO4J_PASSWORD :用于NEO4J身份验证的密码。 NEO4J_DATABASE :neo4j中使用的特定数据库的名称。
克隆项目
git clone https://github.com/kaleabteweld/Agelgil-primer-healthy-recipe-hub-backend转到项目目录
cd Agelgil-primer-healthy-recipe-hub-backend安装依赖项
npm install启动开发服务器(将将Node_env设置为开发)
npm run dev要运行测试,请运行以下命令
npm run test