Collaborative forecasting platform for African biomedical & biotechnology research credibility — LMSR prediction markets, Brier scoring, and graph-powered conflict detection over open research data. FastAPI · Postgres · Neo4j.
# Mbhewoo Labs
**A collaborative forecasting platform for African biomedical and biotechnology research credibility.**
Researchers and domain experts pool their judgement on which scientific findings
will hold up under replication and which clinical trials will progress through
phases. The platform aggregates these forecasts into a continuously updated
credibility signal across the research literature — with depth in HIV/TB vaccine
research and breadth across computational biology, biotech, bioprocessing, and
bioeconomy.
> It is **not** gambling, not betting on clinical trials, not a verdict
> mechanism, and not a peer-review replacement. It is meta-research using
> publicly available data, with researcher-dignity protections built in.
See `CLAUDE.md` for the full project context, domain model, and
conventions.
## Tech stack
- **Backend**: Python 3.13, FastAPI (async), SQLAlchemy 2.0 (async), Alembic
- **Data**: Postgres (Supabase) for state, Neo4j (AuraDB) for the graph
- **Frontend**: Jinja2 + HTMX + Tailwind + Alpine.js (server-rendered, not React)
- **Validation/config**: Pydantic v2 + pydantic-settings
- **Testing**: pytest + pytest-asyncio
- **Scheduling**: APScheduler (not Celery)
## Project layout
```
app/
config.py # settings via pydantic-settings (.env)
database.py # async Postgres engine + Neo4j driver
main.py # FastAPI app, lifespan, routers
routes/ # HTTP route handlers (health, ...)
models/ # SQLAlchemy ORM models
schemas/ # Pydantic API contracts
services/ # business logic (LMSR, Brier scoring, ...)
markets/ # LMSR market engine
ledger/ # Seeds accounting (double-entry)
graph/ # Neo4j operations and Cypher
ingestion/ # external data clients (OpenAlex, PACTR, ...)
templates/ # Jinja2 HTML
static/ # CSS, JS, images
tests/ # pytest tests
alembic/ # database migrations
scripts/ # one-off scripts (seeding, imports, demos)
docs/ …