Peter Meier
261c2fe338
Add environments (spaces) support
...
Deploy to Server / deploy (push) Successful in 2m28s
- API client sends _environment param on all content/asset requests
- GET /api/environments endpoint to list configured environments
- EnvironmentSwitcher in Sidebar with i18n label "Space"
- clearSession() also clears environment from sessionStorage
- .env.example documents ADMIN_USERNAME/PASSWORD/SESSION_SECRET
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 22:46:52 +01:00
Peter Meier
6f2c4d8576
Fix Turbopack build: avoid cross-boundary import in EnvironmentContext
...
Deploy to Server / deploy (push) Failing after 35s
Read sessionStorage directly instead of importing getCurrentEnvironment
from api.ts to avoid Turbopack module boundary resolution error.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 22:44:46 +01:00
Peter Meier
a1e0287e6d
Instant env switch: invalidate all queries on environment change
...
Deploy to Server / deploy (push) Failing after 37s
EnvironmentContext holds current env as React state. On change,
QueryInvalidatorOnEnvChange calls queryClient.invalidateQueries() so
all content/list pages refetch immediately without manual reload.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 22:39:57 +01:00
Peter Meier
09981f5110
Add RUSTYCMS_ENVIRONMENTS to deploy
...
Deploy to Server / deploy (push) Successful in 26s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 22:32:11 +01:00
Peter Meier
634ba8d494
Fix middleware matcher basePath issue, always show logout button
...
Deploy to Server / deploy (push) Successful in 1m10s
Next.js prepends basePath to matcher patterns, so patterns must not
include /admin prefix. Logout button now always visible in sidebar.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 22:05:14 +01:00
Peter Meier
2f3f460e0f
Fix middleware matcher for /admin root path
...
Deploy to Server / deploy (push) Successful in 1m9s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 21:56:43 +01:00
Peter Meier
b432621919
Add proper login to Admin UI, replace Caddy basic_auth
...
Deploy to Server / deploy (push) Successful in 1m55s
- iron-session for encrypted httpOnly session cookies
- POST /api/auth/login: verifies ADMIN_USERNAME/ADMIN_PASSWORD, sets session, returns API key
- POST /api/auth/logout: destroys session
- middleware.ts: protects all routes, redirects to /login if unauthenticated
- Login page: username + password form (no more browser popup)
- Sidebar: logout calls API route and clears session
- docker-compose.prod.yml: admin-ui reads /opt/rustycms/.env.admin
- deploy.yml: generates .env.admin from Gitea secrets
- Caddy: basic_auth removed from /admin* block
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 21:49:32 +01:00
Peter Meier
c644c08222
Generate .env on server from Gitea secrets during deploy
Deploy to Server / deploy (push) Successful in 20s
2026-03-15 14:55:45 +01:00
Peter Meier
e2de403702
Fix asset serving: preserve original case in path (don't lowercase on GET)
Deploy to Server / deploy (push) Successful in 1m39s
2026-03-15 14:47:30 +01:00
Peter Meier
40c83afeb3
Fix apt-get: run update before installing rsync
Deploy to Server / deploy (push) Successful in 20s
2026-03-15 14:41:18 +01:00
Peter Meier
8180ace5e1
Install rsync in deploy step
Deploy to Server / deploy (push) Failing after 6s
2026-03-15 14:39:54 +01:00
Peter Meier
4de99db670
Track all types in git, sync to server on deploy
Deploy to Server / deploy (push) Failing after 7s
2026-03-15 14:38:37 +01:00
Peter Meier
286fab8452
Fix deploy: use SSH to run compose on host directly
Deploy to Server / deploy (push) Successful in 8s
2026-03-15 14:22:19 +01:00
Peter Meier
9e117a45cb
Fix deploy: use repo-local compose file instead of host path
Deploy to Server / deploy (push) Failing after 7s
2026-03-15 14:19:41 +01:00
Peter Meier
ff91a9ff86
Fix TypeScript error: cast unknown to boolean in JSX condition
Deploy to Server / deploy (push) Failing after 57s
2026-03-15 14:13:11 +01:00
Peter Meier
91ebd151c6
Track Cargo.lock for reproducible Docker builds
Deploy to Server / deploy (push) Failing after 9m0s
2026-03-15 13:59:07 +01:00
Peter Meier
ecd257fb8f
Add Gitea Actions deploy workflow and server configuration
...
Deploy to Server / deploy (push) Failing after 1m49s
- Add basePath /admin to Next.js config for path-based routing
- Add .gitea/workflows/deploy.yml for CI/CD via Gitea Actions
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 13:52:41 +01:00
Peter Meier
11d46049d1
Enhance admin UI and schema management: Introduce generic handling for image/asset URL fields, ensuring explicit widget usage for image previews. Update translations for new UI elements and implement field ordering in schema definitions. Add functionality for managing field extensions and improve asset filtering in the admin UI.
2026-03-14 00:08:52 +01:00
Peter Meier
084a1d9e2a
Update admin UI translations and enhance content list: Add 'Status' and 'Published' labels in German and English, and implement status display in the content list page. Format related pages in demo welcome JSON for better readability.
2026-03-13 11:09:03 +01:00
Peter Meier
dc233a48d3
Add page content (home, about) and demo references
...
Made-with: Cursor
2026-03-13 11:01:29 +01:00
Peter Meier
00c38a2b39
Track types/page.json5 for demo schema references
...
Made-with: Cursor
2026-03-13 11:00:41 +01:00
Peter Meier
606455c59b
Enhance documentation and admin UI: Add detailed implementation guidelines in CLAUDE.md, introduce a referrer index in README.md, and update admin UI translations for improved user experience. Update package dependencies for better functionality and performance.
2026-03-13 10:55:33 +01:00
Peter Meier
7754d800f5
Refactor DashboardCollectionList: Simplify search input layout and improve tag selection logic for better user experience.
2026-03-12 16:36:20 +01:00
Peter Meier
22b4367c47
Enhance RustyCMS: Update .gitignore to include demo assets, improve admin UI dependency management, and add new translations for asset management. Implement asset date filtering and enhance content forms with asset previews. Introduce caching mechanisms for improved performance and add support for draft status in content entries.
2026-03-12 16:03:26 +01:00
Peter Meier
7795a238e1
RustyCMS: file-based headless CMS — API, Admin UI (content, types, assets), Docker/Caddy, image transform; only demo type and demo content in version control
...
Made-with: Cursor
2026-03-12 14:21:49 +01:00
Peter Meier
aad93d145f
RustyCMS: File-based headless CMS with REST API, admin UI, multilingual support
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-16 09:30:30 +01:00