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