# report-notebooklm-api FastAPI service for the report-notebooklm Phase 1 public read surface. This directory is the main engineering handoff entry for API, data model, seed import, and the NotebookLM-backed content pipeline. The companion Flutter app lives in `../report-notebooklm-app/` in the same monorepo. ## Read First - [docs/HANDOFF.md](docs/HANDOFF.md): current progress, solved issues, open issues, and handoff order. - [docs/PROJECT_BRIEF.md](docs/PROJECT_BRIEF.md): product and Phase 1 scope snapshot. - [docs/API_AND_DATA.md](docs/API_AND_DATA.md): data tables, endpoints, implemented vs planned API. - [docs/CONTENT_PIPELINE.md](docs/CONTENT_PIPELINE.md): report source and NotebookLM artifact flow. - [docs/RUNBOOK.md](docs/RUNBOOK.md): local setup, seed import, smoke checks, and deployment checks. - [docs/ROADMAP_AND_OPEN_ISSUES.md](docs/ROADMAP_AND_OPEN_ISSUES.md): next engineering work. - [docs/SOURCE_INDEX.md](docs/SOURCE_INDEX.md): source document names used for this handoff snapshot. ## Product Boundary This repo contains code and an engineering handoff snapshot. It is not the product source of truth. Product SSOT: mall-docs report-notebooklm docs. Snapshot date: 2026-06-03. Use `report-notebooklm` and `rnb` for technical identifiers. The user-facing product name is `研听`. ## Local Quick Start Create a `.env` file with the backend services available to your environment: ```bash RNB_DATABASE_URL=mysql+asyncmy://:@:/report_notebooklm RNB_REDIS_URL=redis://:/0 RNB_REDIS_KEY_PREFIX=rnb: ``` Then run: ```bash python -m venv .venv source .venv/bin/activate pip install -e ".[dev]" alembic upgrade head python scripts/import_seed_content.py uvicorn app.main:app --reload --host --port ``` API prefix: `/api/report-notebooklm/v1` ## Verify ```bash source .venv/bin/activate pytest -q ``` Recommended smoke checks after the service starts: ```bash API_BASE_URL=http://:/api/report-notebooklm/v1 curl "$API_BASE_URL/health" curl "$API_BASE_URL/feed/recommended" curl "$API_BASE_URL/reports/rep_ssga_gold" ```