Phase 7: MIT license, portfolio README, Docker, cross-platform start
- LICENSE: MIT - README: rewritten as portfolio-grade docs (features with code pointers, architecture, Docker/Windows/macOS quick starts, BYO-model table) - Dockerfile (3-stage: SPA build, pip wheels, slim runtime) + compose with a /data volume; .dockerignore keeps secrets and local data out - database.py: AIDND_DB_PATH env override so deployments can relocate the SQLite file; documented in backend/.env.example - start.sh: macOS/Linux dev script with first-run setup Verified locally: production SPA build served by the backend (deep links OK), DB created at the override path. Docker image itself untested here (Docker not installed); flagged in plan/07. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KFsGHju9szibJJa2YJcdbg
This commit is contained in:
co-authored by
Claude Fable 5
parent
466d7bc0e4
commit
22630c8411
@@ -10,36 +10,42 @@ immediately usable on a resume — before any hosted-deployment work.
|
||||
| License | **MIT** |
|
||||
| README media (screenshots/GIF) | **Skip for now** — text-only README; visuals in a later pass |
|
||||
|
||||
**Ask before implementing:** GitHub repo name (default suggestion: `ai-dnd`) and whether the
|
||||
existing local commit history/message is fine to publish as-is.
|
||||
**Repo name (decided): `AI-DnD`.** Ask before publishing: whether the existing commit
|
||||
history/messages are fine to publish as-is.
|
||||
|
||||
## Repo hygiene
|
||||
|
||||
- [ ] Add `LICENSE` (MIT, current year, Parth Thakkar).
|
||||
- [ ] Verify no secrets or user data are tracked (`openrouter_key.env`, `data.db` — already
|
||||
- [x] Add `LICENSE` (MIT, current year, Parth Thakkar).
|
||||
- [x] Verify no secrets or user data are tracked (`openrouter_key.env`, `data.db` — already
|
||||
gitignored and never committed; re-verify before push).
|
||||
- [ ] Add `backend/.env.example` documenting every env var the app reads (grows in Phase 9).
|
||||
- [ ] Decide what to do with `CODE_REVIEW_FINDINGS.md` and `plan/` — keep (shows process, good
|
||||
- [x] Add `backend/.env.example` documenting every env var the app reads (grows in Phase 9).
|
||||
(Currently just `AIDND_DB_PATH`, added to `database.py` for Docker/hosted volumes.)
|
||||
- [x] Decide what to do with `CODE_REVIEW_FINDINGS.md` and `plan/` — keep (shows process, good
|
||||
for a portfolio) — just give them a one-line mention in the README.
|
||||
|
||||
## README rewrite (portfolio-grade, text-only)
|
||||
|
||||
- [ ] Pitch paragraph: what it is, what makes it interesting (AI Dungeon-compatible scripting,
|
||||
- [x] Pitch paragraph: what it is, what makes it interesting (AI Dungeon-compatible scripting,
|
||||
memory bank with embeddings, full prompt transparency/Insights, provider-agnostic).
|
||||
- [ ] Feature list with pointers into the code (scripting engine, context builder, memory bank).
|
||||
- [ ] Architecture diagram (reuse/refresh the one in `plan/00-OVERVIEW.md`).
|
||||
- [ ] Setup instructions for **Windows (start.ps1), macOS/Linux (manual), and Docker**.
|
||||
- [ ] "Bring your own model" section: Ollama / LM Studio / OpenRouter free models — emphasize it
|
||||
- [x] Feature list with pointers into the code (scripting engine, context builder, memory bank).
|
||||
- [x] Architecture diagram (reuse/refresh the one in `plan/00-OVERVIEW.md`).
|
||||
- [x] Setup instructions for **Windows (start.ps1), macOS/Linux (manual), and Docker**.
|
||||
- [x] "Bring your own model" section: Ollama / LM Studio / OpenRouter free models — emphasize it
|
||||
runs fully free.
|
||||
- [ ] Placeholder section for screenshots/GIF (added in a later pass).
|
||||
- [x] Placeholder section for screenshots/GIF (added in a later pass).
|
||||
|
||||
## Docker (one-command run for non-Windows users)
|
||||
|
||||
- [ ] `Dockerfile`: multi-stage — build frontend (`npm run build`), then Python image serving
|
||||
- [x] `Dockerfile`: multi-stage — build frontend (`npm run build`), then Python image serving
|
||||
FastAPI with the built SPA mounted (SPA fallback already exists in `app/main.py`).
|
||||
- [ ] `docker-compose.yml`: single service, volume for `data.db`, port mapping.
|
||||
- [ ] `start.sh` for macOS/Linux dev parity with `start.ps1` (optional, nice-to-have).
|
||||
(3 stages: node build → pip wheel build with gcc for quickjs → slim runtime.)
|
||||
- [x] `docker-compose.yml`: single service, named volume mounted at `/data`
|
||||
(`AIDND_DB_PATH=/data/data.db`), port mapping.
|
||||
- [x] `start.sh` for macOS/Linux dev parity with `start.ps1` (optional, nice-to-have).
|
||||
- [ ] Test: `docker compose up` from a clean clone → app works at `http://localhost:8000`.
|
||||
**Blocked locally: Docker is not installed on the dev machine.** Verified without Docker:
|
||||
production frontend build + backend serving the SPA (deep links OK) + DB-path override
|
||||
all work. Test the image on any Docker machine (or let Render build it in Phase 10).
|
||||
|
||||
## Publish
|
||||
|
||||
|
||||
Reference in New Issue
Block a user