Commit Graph
7 Commits
Author SHA1 Message Date
jmartin f29efb7924 Hard-filter /portfolio/:slug when it matches a category
Category chips (e.g. /portfolio/photography) now show only that
category — empty if none. Audience views like /portfolio/game-dev
still use prioritization.
2026-07-24 11:19:47 -04:00
jmartin 81e80c7e2f Infer ArtStation categories from Blender/sculpt tools
Stop defaulting imports to CAD; map Blender to 3D Modeling and
sculpt tools (Nomad/ZBrush) to 3D Sculpting.
2026-07-24 11:13:11 -04:00
jmartin cef5738044 Add admin UI for ArtStation re-import
Expose import as a background admin job with status polling, dry-run
and optional publish; share logic with the CLI via a service module.
2026-07-24 10:52:11 -04:00
jmartin ac7eb17854 Use FlareSolverr for ArtStation import behind Cloudflare
ArtStation blocks plain HTTP; route JSON fetches through FlareSolverr
with a direct-fetch fallback.
2026-07-24 10:44:18 -04:00
jmartin 346b095d3a Drop redundant jmartgraphix wordmark next to logo
Hero shows logo + tagline only; header is logo-only for a11y.
2026-07-24 10:28:40 -04:00
jmartin f03d448303 Authorize admin by username jmartin only
Drop group membership checks; trust Authelia Remote-User when it
equals the configured ADMIN_USERS list (default: jmartin).
2026-07-24 09:38:23 -04:00
jmartin 43928f7a49 Initial portfolio CMS: Fastify API + Vite SPA
Single-container app with Postgres catalog, Typesense search,
Authelia Remote-User admin, portfolio views, resume/PDF, media
uploads, and ArtStation import tooling.
2026-07-23 17:01:34 -04:00