docs: refresh CI + lint/format docs (Phase 8 + Phase 13)
This commit is contained in:
@@ -90,9 +90,12 @@ docker-compose.dev.yml Dev overrides (bind-mount src/, expose DB/Redis ports)
|
||||
| `pnpm dev:api` | Start API in watch mode (`dist/` must be built first) |
|
||||
| `pnpm dev:pwa` | Start Vite dev server with HMR |
|
||||
| `pnpm build` | Build both api and pwa |
|
||||
| `pnpm test` | Run API test suite (vitest) |
|
||||
| `pnpm lint` | Lint all workspaces |
|
||||
| `pnpm test` | Run API test suite (vitest + real MariaDB) |
|
||||
| `pnpm test:e2e` | Run Playwright harness (iPhone + Pixel profiles) |
|
||||
| `pnpm lint` | ESLint across all workspaces (flat config, TS-aware) |
|
||||
| `pnpm typecheck` | Type-check all workspaces |
|
||||
| `pnpm format` | Reformat all files with Prettier |
|
||||
| `pnpm format:check` | Check formatting without writing (used in CI) |
|
||||
| `pnpm --filter @familysync/api db:generate` | Generate Drizzle migration from schema changes |
|
||||
| `pnpm --filter @familysync/api db:migrate` | Apply pending migrations to MariaDB |
|
||||
|
||||
@@ -123,6 +126,18 @@ Store the app password in the database via the `/me` endpoint after first login.
|
||||
|
||||
See [`docs/deployment.md`](docs/deployment.md) for Unraid/Docker Compose deployment notes including the Pangolin/Newt tunnel configuration.
|
||||
|
||||
## CI
|
||||
|
||||
Every PR to `main` must pass three required checks before it can merge:
|
||||
|
||||
| Job | What it runs |
|
||||
| ------------------ | -------------------------------------------------------------------------- |
|
||||
| `CI / fast-checks` | `pnpm lint`, `pnpm format:check`, `pnpm typecheck`, PWA unit tests |
|
||||
| `CI / api` | DB migrations + API test suite against a real MariaDB 11 service container |
|
||||
| `CI / harness` | Playwright end-to-end harness (WebKit iPhone + Chromium Pixel) |
|
||||
|
||||
`fast-checks` and `api`/`harness` run in parallel. Defined in `.gitea/workflows/ci.yml`.
|
||||
|
||||
## Publishing / Releases
|
||||
|
||||
Publishing happens automatically on every push to `main` — i.e. when a PR merges. The `.gitea/workflows/publish.yml` workflow runs and builds + pushes the API image to the Gitea container registry.
|
||||
|
||||
Reference in New Issue
Block a user