Engineering dashboard
Ce contenu n’est pas encore disponible dans votre langue.
A single view of what’s been built, what’s in flight, and what’s moving on the repo right now. Combines the structured roadmap with live(-ish) GitHub snapshots.
Repository
Self-hosted art review and archive for game studios — artist-first, AGPL-3.0 (commercial license available), Go + Postgres + SvelteKit.
Stars
1
Forks
0
Watchers
1
Open issues
46
Open PRs
4
Roadmap progress
Last updated 2026-07-23. See the full roadmap page for prose detail.
Foundations shipped
39
items in the “Shipped” section
Review tool sub-phases — shipped
5 / 19
Review tool sub-phases — planned
12
Commit cadence
No commit activity yet. The GitHub stats endpoint needs a few hours of
pre-computation after the first repo activity — re-run
pnpm refresh-github later.
Latest commits (45) — across 2 branches
-
9ec0bf6chore(ui): neutralise third-party product references in UI comments (#608) (#609) dev Kenneth · today -
9f4dc94fix(seed): correct site_b-only note on site_a Pexels records + direct Blender video sources (#607) dev Kenneth · today -
1d64a2bfeat(seed): productionise the dataset upgrade so re-assembly can't undo it (#604) (#605) dev Kenneth · today -
6c4f45cfix(cards): restore video/3D hover scrub on collection tiles (#595) (#601) dev Kenneth · today -
90568e7feat(grid): per-tile 2px inset + 4px radius, matching the reference (#596) (#598) dev Kenneth · today -
c836172feat(theme): dark becomes the default; rework light as its sibling (#590) (#593) dev Kenneth · today -
dfcfbe5feat(thumbnail): title header on top + invert the density offset (#556) (#592) dev Kenneth · today -
67b9a6dfeat(grid): cover-crop fill + uniform gutter; landscape tiles blocked on the col variant (#561) (#588) dev Kenneth · today -
9cdbe88feat(collections): mount the shared view controls on the collection page (#582) (#586) dev Kenneth · today -
b9c3ac1feat(chrome): consolidate the bottom controls, lucide thumbnail glyph, keep the switcher on screen after picking (#554) (#585) dev Kenneth · yesterday -
48b3a4afix(viewer): close returns to where you came from, not the browse feed (#581) (#583) dev Kenneth · yesterday -
0b10c11feat(cards): collapse grid overlay into a ⋮ menu + persistent multi-asset badge (#578) (#580) dev Kenneth · yesterday
Releases (11)
- v0.6.0 artist-alley v0.6.0 2d ago
- v0.5.2 artist-alley v0.5.2 4d ago
- v0.5.1 artist-alley v0.5.1 4d ago
- v0.5.0 artist-alley v0.5.0 5d ago
- v0.4.0 artist-alley v0.4.0 7d ago
- v0.3.1 artist-alley v0.3.1 8d ago
- v0.3.0 artist-alley v0.3.0 8d ago
- v0.2.0 artist-alley v0.2.0 10d ago
- v0.1.2 artist-alley v0.1.2 10d ago
- v0.1.1 artist-alley v0.1.1 13d ago
Open issues (46)
- #602 seed: Pexels videos aren't re-fetchable from provenance (page URL, not media URL) priority:3
- #600 Epic: account surface completeness — 13 of 21 tiles are stubs, but 6 are cheap (4 have shipped backend, 2 are static) priority:2
- #599 ci: every run leaks two tagged images — cleanup prunes dangling only, but per-run images are never dangling priority:2
- #594 a11y: pre-existing contrast gaps surfaced by the theme audit (border on form controls, on-secondary, dead user.theme) priority:2
- #591 Epic: asset media metadata the client can rely on (ladder_available + thumbhash/ext + has_image) priority:1
- #589 backend: grid can't do landscape tiles — the col variant is a 320px square centre-crop; needs a landscape rung or a ladder_available signal priority:2
- #584 web: scroll position is lost returning from the viewer — SvelteKit snapshots window scroll, but the app scrolls an inner <main> priority:2
- #579 assets.has_image is never written — featured ASSET tiles can never render, and it silently gates EXIF backfill priority:1
- #577 web: team channels rail — every team is a channel, per-user followable priority:2
- #573 security posture: session IPs need only users.read, but audit actor IPs need system.audit.pii.read — same data class, two bars priority:2
Open PRs (4)
- #544 chore(deps-dev): bump the majors group across 1 directory with 2 updates dependabot[bot]
- #542 chore(ci): bump actions/checkout from 4 to 7 dependabot[bot]
- #541 chore(ci): bump docker/setup-qemu-action from 3 to 4 dependabot[bot]
- #540 chore(ci): bump actions/setup-node from 4 to 7 dependabot[bot]
Languages
- Go 62.9%
- Svelte 19.6%
- TypeScript 7.3%
- PLpgSQL 4.3%
- Python 2.8%
- Shell 1.8%
- HTML 0.5%
- Dockerfile 0.2%
- JavaScript 0.2%
- CSS 0.1%
- Go Template 0.1%
- Kaitai Struct 0.1%
- Makefile 0.1%
Contributors (2)
-
mscrnt 188 commits
-
dependabot[bot] 10 commits
How this is wired
Section titled “How this is wired”- Roadmap data comes from a hand-authored
src/content/roadmap/roadmap.jsonin this site repo, validated by a Zod schema insrc/content.config.ts. The narrative version atdocs/roadmap.mdin the OSS repo is the canonical prose. - GitHub snapshot comes from
src/content/github/snapshot.json, refreshed on a cron by a scheduled GitHub Actions workflow. To refresh it locally, runpnpm refresh-github(withgh.exeauthed) to pull a fresh snapshot from the live API.
Run locally (the site repo is its own root — there is no site/ subdirectory):
pnpm installpnpm refresh-github # optional — uses gh.exe to fetch a fresh snapshotpnpm dev # http://localhost:4321/engineering/