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