Commit Graph
108 Commits
Author SHA1 Message Date
JakeBreath 063305c552 Remove frontend build-version plumbing
The backend status endpoint already reports the shared git hash and
environment, so the SPA no longer needs its own baked copy.
2026-09-17 08:33:22 -05:00
JakeBreath 8a81764401 Footer: drop the duplicate build version, keep it in the header only
- Footer now shows just the storage path and active workers
- Version/env stays in the header status pill (spec updated to match)
2026-09-17 08:28:23 -05:00
JakeBreath cc625d1e10 Fix shell details: distro name, storage path only in footer
- OS name comes from /etc/os-release (e.g. 'CachyOS Linux'), mirroring
  the original app's os_utils; macOS/Windows get proper names too
- Status pill shows the name as-is instead of uppercasing it
- Removed the watched-folder path next to the logo; it now appears only
  in the footer strip (spec updated to match)
2026-09-17 08:26:14 -05:00
JakeBreath 3aa42f3703 Shell polish: storage line, status pill, footer strip, sidebar
Backend:
- apps.core with GET /api/status/ (env, git hash, OS, watched folder,
  worker counts) and a TimingMiddleware adding X-Server-Time-Ms
- status endpoint reports its own server-side assembly time

Frontend:
- top bar shows the storage line (watched folder) and a status pill
  with ENV, git hash, host OS, server time (e621 time once it exists)
- fixed 32px footer strip: storage path, active workers, build version
- collapsible filter sidebar: closed by default, Ctrl/Cmd+B toggle,
  overlay drawer with backdrop blur under 1024px
- rating filters, per-page and sidebar state persist in localStorage
2026-09-17 08:19:27 -05:00
JakeBreath 0ff6232ba5 docs: drop the invented 'Mocha Archive Terminal' name
- DESIGN.md frontmatter no longer names the design system
- The spec now references the local DESIGN.md file instead of the
  Stitch-internal design system placeholder
2026-09-17 08:14:02 -05:00
JakeBreath 3c66629ed2 Use the git commit hash as the app version
- Spec header, status pill and footer now document '<env> @ <hash>'
  instead of invented release numbers
- Backend settings expose GIT_COMMIT_HASH / APP_ENV / APP_VERSION,
  mirroring the original app
- Frontend bakes the short hash in at build time and shows it in the
  top bar
2026-09-17 08:12:54 -05:00
JakeBreath 3f353307cf docs: correct spec assumptions (storage line, status pill, footer workers)
- 'NAS UI' tag was a misinterpretation of the watched-folder path; the
  spec now calls it the storage line and notes J621 is folder-based
- Status pill documents the real backend fields: environment, actual
  host OS, page generation time, e621 API request time
- Footer strip is marked as a proposal; the workers count is real data
  from the stats page, not invented thread counts
- Removed the remaining 'Write to NAS' / 'Ingest to NAS' phrasing
2026-09-17 08:10:35 -05:00
JakeBreath 555c25d77b M0: scaffold SPA + API monorepo
Backend (Django 6.1 + DRF):
- Token auth with a custom User model (register/login/logout/me)
- Library models (MediaItem, MediaLocation) and REST endpoints
- File list/detail with search, rating filter, sorting, pagination
- Multipart upload with optional rating/tags/notes
- Range-aware media serving (video seeking) and ffmpeg thumbnails
- scan_files management command for the watched folder

Frontend (React 19 + Vite + TypeScript):
- Catppuccin Mocha design tokens from the design docs
- App shell, token persistence, protected routes
- Library grid with filters, file detail with custom data editor
- Upload page with per-file progress via XHR
- Dev proxy to the Django API
2026-09-17 07:56:47 -05:00