Commit Graph

5 Commits

Author SHA1 Message Date
Jeff Emmett 321e3e3f75 fix: cap image sizes and increase memory limit to stop 502 crash loop
Next.js image optimization was generating 3840px images that caused the
container to exceed its 128MB memory limit, triggering repeated restarts.
Capped deviceSizes to max 1200px and bumped mem_limit to 256MB.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 16:17:58 -04:00
Jeff Emmett 630312c7ea Site restructure + admin panel for self-management
- Split page.tsx into server component + home-client.tsx (data-driven)
- Add /about page with extended biography, Art as Ritual, Art in Motion
- Add /admin panel (password-protected) for artworks, events, services CRUD
- Restructure nav: Home | Art | Services | Re Evolution Art | About | Contact
- Services now show "How it works" / "Who it is for" bullet points
- Gallery: featured artworks (large), grid, sold/private carousel, lightbox with metadata
- "Future Gatherings" renamed to "PULSAR"
- JSON data layer with auto-seed from hardcoded content (/data volume)
- Image upload API with file type validation (max 10MB)
- HMAC session auth (Web Crypto API, Edge-compatible)
- Docker: named volume xhivart-data, /data directory, ADMIN_PASSWORD env

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 02:37:05 +00:00
Jeff Emmett 96172427fc Fix broken images on live site with cache-busting and proper headers
Cloudflare was caching 404 responses from before the tunnel was configured.
Added query params to bust stale cached 404s for featured.jpg and goddess.webp.
Added Cache-Control headers for /images/* to ensure proper long-term caching.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 12:25:14 +00:00
Jeff Emmett d5efb63145 Initial xhivart.ch mirror site implementation
Complete single-page application mirroring xhivart.ch content:
- Hero section with Ximena Xaguar branding
- Ritual Art Alchemy section
- Services section (Crystal Therapy, Temazcal, Deep Integration)
- Re Evolution Art cultural platform section
- Testimonials section
- About section
- Contact form
- Responsive navigation with mobile menu
- Footer with social links

Styling:
- Custom CSS variables for brand colors
- Elegant typography with Cormorant Garamond and Montserrat
- Glassmorphism navigation
- Fade-in animations
- Service cards with accent colors

Deployment:
- Docker configuration with standalone output
- docker-compose.yml for Traefik integration

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 01:30:30 +01:00
Jeff Emmett 8a19a9d94d Initial commit from Create Next App 2026-01-25 00:57:10 +01:00