mirror of
https://github.com/Dvorinka/Dash.git
synced 2026-10-28 07:41:27 +00:00
feat: phase 0 foundation — monorepo scaffold, backend, frontend, CI, docker
Establishes the skeleton every later phase builds on: Go+Gin API with zap logging, /api/healthz, SQLite+goose runner; Vite+React18+TS strict+ Tailwind v4 frontend with bento-mono theme tokens; openapi.yaml driving a generated TS client; oxlint with vendored anti-slop rules; GitHub CI; multi-stage Dockerfile -> 33.6MB distroless image; docker compose up serves the blank board. Generated with [Devin](https://devin.ai) Authored By: TDvorak <[email protected]> Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
1 parent
e7f32949e9
commit
b60821350a
46 files changed
+6415
-10
No files matched your search
+10
-10
@@ -39,20 +39,20 @@ or popover logic.
|
||||
|
||||
---
|
||||
|
||||
## Phase 0 — Foundation → part of v0.1.0
|
||||
## Phase 0 — Foundation → part of v0.1.0 ✅ done 2026-09-17
|
||||
|
||||
Repo hygiene and pipelines before features.
|
||||
|
||||
- [ ] Monorepo scaffold (`apps/frontend`, `apps/backend`, `packages/api-client`, `infra/`, `data/`)
|
||||
- [ ] MIT `LICENSE`, `README.md`, `.gitignore`, `AGENTS.md`
|
||||
- [ ] `openapi.yaml` stub → generated TS client (`packages/api-client`)
|
||||
- [ ] Backend skeleton: Gin router, `zap` logging, `/api/healthz`, SQLite open + goose migrations runner
|
||||
- [ ] Frontend skeleton: Vite + TS strict + Tailwind + shadcn/ui, theme tokens matching `d-bento-mono.html` CSS vars
|
||||
- [ ] CI (GitHub Actions): `go build ./...`, `go vet ./...`, `go test ./...`, `tsc --noEmit`, `oxlint` + vendored anti-slop rules, `npm run build`
|
||||
- [ ] Multi-stage `Dockerfile` (frontend build → Go build → `FROM scratch`/distroless, `embed.FS` serves UI)
|
||||
- [ ] `docker-compose.yml` — one service, `./data:/data` volume
|
||||
- [x] Monorepo scaffold (`apps/frontend`, `apps/backend`, `packages/api-client`, `infra/`, `data/`)
|
||||
- [x] MIT `LICENSE`, `README.md`, `.gitignore`, `AGENTS.md`
|
||||
- [x] `openapi.yaml` stub → generated TS client (`packages/api-client`)
|
||||
- [x] Backend skeleton: Gin router, `zap` logging, `/api/healthz`, SQLite open + goose migrations runner
|
||||
- [x] Frontend skeleton: Vite + TS strict + Tailwind + shadcn/ui, theme tokens matching `d-bento-mono.html` CSS vars
|
||||
- [x] CI (GitHub Actions): `go build ./...`, `go vet ./...`, `go test ./...`, `tsc --noEmit`, `oxlint` + vendored anti-slop rules, `npm run build`
|
||||
- [x] Multi-stage `Dockerfile` (frontend build → Go build → distroless, `embed.FS` serves UI)
|
||||
- [x] `docker-compose.yml` — one service, `./data:/data` volume
|
||||
|
||||
**Exit:** `docker compose up` serves a blank board. CI green on `main`.
|
||||
**Exit:** `docker compose up` serves a blank board — verified locally (33.6 MB image). CI green on `main` — pending first push.
|
||||
|
||||
## Phase 1 — MVP → v0.1.0
|
||||
|
||||
|
||||
Reference in new issue
Block a user