Database system for tracking biomarkers and calculating biological age based on NHANES data.
NOT for medical diagnostic purposes.
### First-time setup (Mac/Linux)
```bash
git clone … && cd longevity-biomarker-tracker
cp .env.example .env
make install # python deps + pre-commit
make db # starts MySQL + Adminer on :3307
make run # FastAPI on :8000
make ui # Do this in a new terminal. Then open http://localhost:80
# ETL is optional until the transform notebook is finishedThe initial database schema is loaded automatically when the database container is first created. For subsequent schema changes:
- Update the
sql/schema.sqlfile - Run the following command to apply changes:
docker compose exec db mysql -u biomarker_user -pbiomarker_pass longevity < sql/schema.sql
- Or use this shortcut
make db-reset
- The ETL process (
make etl) will generate atests/sample_dump.sqlfile with sample data for testing purposes. - This sample data is used by the CI workflow to test the API functionality.
- NOT for medical diagnostic purposes.
This project uses pre-commit hooks to ensure code quality and consistency. To set up:
# Install pre-commit
make install # or manually: pip install pre-commit
# Install the git hooks
pre-commit install