# Installation ## Prerequisites - Python 3.10+ - Git - (Optional) PostgreSQL 14+ for production - (Optional) NVIDIA GPU + CUDA for mining ## Monorepo Install ```bash git clone https://github.com/oib/AITBC.git cd aitbc python -m venv .venv && source .venv/bin/activate pip install -e . ``` This installs the CLI, coordinator API, and blockchain node from the monorepo. ## Environment Configuration ### Coordinator API Create `apps/coordinator-api/.env`: ```env JWT_SECRET=your-secret-key DATABASE_URL=sqlite:///./data/coordinator.db # or postgresql://user:pass@localhost/aitbc LOG_LEVEL=INFO ``` ### Blockchain Node Create `apps/blockchain-node/.env`: ```env CHAIN_ID=ait-devnet RPC_BIND_HOST=0.0.0.0 RPC_BIND_PORT=8080 MEMPOOL_BACKEND=database ``` ## Systemd Services (Production) ```bash sudo cp systemd/aitbc-*.service /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl enable --now aitbc-coordinator-api sudo systemctl enable --now aitbc-blockchain-node-1 ``` ## Verify ```bash systemctl status aitbc-coordinator-api curl http://localhost:8000/v1/health aitbc blockchain status ``` ## Troubleshooting | Problem | Fix | |---------|-----| | Port in use | `sudo lsof -i :8000` then `kill` the PID | | DB corrupt | `rm -f data/coordinator.db && python -m app.storage init` | | Module not found | Ensure venv is active: `source .venv/bin/activate` | ## Next Steps - [3_cli.md](./3_cli.md) — CLI usage guide - [../2_clients/1_quick-start.md](../2_clients/1_quick-start.md) — Client quick start - [../3_miners/1_quick-start.md](../3_miners/1_quick-start.md) — Miner quick start