How lwandomac/alpha-brief works
Alpha Brief is a focused investment-research journal: users record a ticker thesis and its assumptions, request an on-demand check using news or pasted text, then review the verdict and conviction history. The frontend pages use a typed API client to reach FastAPI routes. Thesis routes manage saved theses; the check route owns orchestration, calling the AI evaluator and persisting each result. The evaluator optionally fetches Google News snippets and calls the configured LLM. Storage and UI component wiring are based on README documentation where source excerpts were not provided.
Main entry points: App.tsx Web app · ai.py Thesis evaluator · ThesisDetail.tsx Thesis detail · check.py Check route
Components 16
Research interface
- Web app
frontend/src/App.tsx - Thesis list
frontend/src/pages/ThesisList.tsx - New thesis
frontend/src/pages/NewThesis.tsx - Thesis detail
frontend/src/pages/ThesisDetail.tsx - Conviction chart
frontend/src/components/ConvictionChart.tsx - Typed API client
frontend/src/api/client.ts
API and workflows
- FastAPI app
backend/main.py - Thesis routes
backend/src/routes/theses.py - Check route
backend/src/routes/check.py
Check analysis
- Thesis evaluator
backend/src/lib/ai.py - News search
backend/src/lib/search.py - LLM configuration
backend/src/config.py
Persistent state
- SQLite database
backend/src/lib/db.py
Other components
- Researcher
- LLM provider
- Google News RSS
Connections 17
- Researcher → Web app: uses
- Web app → Thesis list: routes to
- Web app → New thesis: routes to
- Web app → Thesis detail: routes to
- Thesis list → Typed API client: requests data
- New thesis → Typed API client: creates thesis
- Thesis detail → Typed API client: requests and checks
- Thesis detail → Conviction chart: renders history
- FastAPI app → Thesis routes: registers router
- FastAPI app → Check route: registers router
- Thesis routes → SQLite database: reads and writes
- Check route → SQLite database: loads and saves
- Check route → Thesis evaluator: runs evaluation
- Thesis evaluator → News search: fetches snippets
- News search → Google News RSS: requests RSS
- Thesis evaluator → LLM configuration: reads provider settings
- Thesis evaluator → LLM provider: submits evaluation