Starlog is a single-user study, notes, planning, and assistant system.
The default browser entry point is Today: manual card creation, due review, and daily
morning/evening notes. Assistant, Library, Planner, and Review remain the official
surfaces, with Assistant secondary to the focused study workflow for now.
Today: focused daily entry point for cards, due review, and daily notesAssistant: the primary thread for commands, follow-up questions, confirmations, and returned cardsLibrary: notes, captures, saved artifacts, and source historyPlanner: tasks, schedule, briefings, and time blocksReview: flashcards and recall sessionsDesktop helper: a capture companion for clipboard and screenshot intake on laptop
For a first-time user, the normal path is:
- Open the web app at
/today. - If this is a new Starlog instance, choose
Set Up Starlogand create a passphrase with at least 12 characters. - Sign in with that same passphrase.
- Add cards manually, review due cards, and save the daily morning plan/evening reflection.
- Open
Assistant,Library,Planner, or the fullReviewsurface only when needed.
Important:
- Starlog is single-user today.
- Do not commit passphrases, bearer tokens, API keys, or bridge tokens into this repo.
User docs:
- docs/CURRENT_STATE.md
- docs/USER_GUIDE.md
- docs/MORNING_BRIEFING_AND_VOICE.md
- docs/CODEX_PHONE_PWA_CONNECTION.md
The intended flow is simple:
- Start at
/today. - Write or update the daily note.
- Create cards manually from what you are studying.
- Review due cards.
- Open a support view only when needed:
Libraryfor notes/artifacts,Plannerfor scheduling,Reviewfor full deck work, andAssistantfor command-style help.
The native mobile app is the first-class mobile client.
Tabs:
AssistantLibraryPlannerReview
Use mobile for:
- quick capture
- voice input
- in-thread Assistant actions
- review on the go
- alarm and briefing playback
Starlog is designed so the web app and API can be self-hosted together.
The PWA talks to the API you run. The native mobile app and desktop helper can then point at that same deployment, whether you host it locally, on Railway, or somewhere else.
Node.js+pnpmPython 3.12+uv
From repo root:
./scripts/dev_stack.shThis command:
- installs or refreshes workspace dependencies with
pnpm install - syncs the API environment with
uv sync --project services/api --extra dev - starts the API on
http://0.0.0.0:8000 - starts the PWA on
http://localhost:3000
For phone or LAN testing, use:
./scripts/dev_stack.sh --lanThat keeps the API on http://0.0.0.0:8000 and exposes the PWA on http://0.0.0.0:3000.
Press Ctrl-C once to stop both services.
If you prefer aliases, make dev-stack, make dev-stack-lan, pnpm dev:stack, and pnpm dev:stack:lan point to the same flow.
If you prefer to run each service yourself:
Install dependencies:
pnpm install
uv sync --project services/api --extra devRun the API:
uv run --project services/api uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 --app-dir services/apiRun the PWA:
pnpm --filter web devFor LAN access to the PWA, use:
pnpm --filter web dev -- --hostname 0.0.0.0 --port 3000Build:
pnpm --filter web buildRun:
pnpm --filter web startThe production web server uses the Next.js app in apps/web.
The API can be hosted anywhere that can run the FastAPI service in services/api.
- Open the web app.
- Set API base to your API URL, for example
http://localhost:8000. - Click
Set Up Starlogif this is a new instance. - Sign in with the passphrase you just created.
- Go to
/assistantand start using the thread.
For LAN testing from your phone, use:
- web app:
http://<YOUR_LAN_IP>:3000 - API:
http://<YOUR_LAN_IP>:8000
Detailed setup:
The desktop helper is a capture-first companion, not a second full client.
Use it for:
- clipboard capture
- screenshot capture
- recent capture review
Open in LibraryAsk Assistant
Setup and release docs:
- product direction: PLAN.md
- current state: docs/CURRENT_STATE.md
- repo rules: AGENTS.md
- assistant UI/backend reset: starlog_assistant_ui_repo_execution_checklist.md
- user guide: docs/USER_GUIDE.md