Welcome to NFDs, Non-Fungible Data! A Decentralized Big Data Infrastructure.
- Nvm installed on the machine, or Node version v21.1.0 (inside the .nvmrc file)
- Python 3.12.3
- Clone repo
- Use correct node version in
.nvmrcor runnvm use - Install yarn:
npm install -g yarn - Install libraries:
yarn - Smart contracts
cd contracts/nfd- Setup python venv:
python -m venv venv - Activate venv:
source venv/bin/activate - Install python requirements:
pip install -r ./requirements.txt
- Backend
cd backend- Setup python venv:
python -m venv venv - Activate venv:
source venv/bin/activate - Install python requirements:
pip install -r ./requirements.txt - Log in to firebase
npx firebase login
- Backend Auth
cd backend_auth- Use another version of node:
nvm use - Install yarn:
npm install -g yarn - Install dependencies:
yarn - Build:
yarn build
- Under
./backendcreate a.envfile - Add
LIGHTHOUSE_TOKEN=<token>create a token here: https://files.lighthouse.storage/dashboard/apikey - Add
OPENAI_API_KEY=<token>create a token here: https://platform.openai.com/settings/profile?tab=api-keys
yarn verify:contracts
yarn build:contracts
yarn deploy:contracts:arbitrum
yarn start
Or you can run the UI and Backend separately:
- Start a local Tableland instance:
yarn start:tableland - Start the backend:
yarn start:backend - Start the frontend:
yarn start:ui
You access the different parts of the APP:
- UI: http://localhost:3000/
- APIs: http://127.0.0.1:5001/demeter-a0451/europe-west1/on_request/
- Auth APIs: http://127.0.0.1:5001/demeter-a0451/us-central1/
- Firebase Emulators: http://127.0.0.1:4000/
This project is using CI/CD pipelines to deploy on Firebase cloud. Every merge on the main branch will automatically deploy the application into firebase.
