21 Commits
Author SHA1 Message Date
Jan Wagner 820a2f8241 feat: route alles unter w-make.com — admin/api ohne Subdomain
- Traefik-Routing: /admin und /v1/* auf updates-api (prioritaet 150/200)
- Portfolio fängt restliches w-make.com ab (prioritaet 100)
- Subdomain updates.w-make.com entfällt
- Admin-HTML: Kicker aktualisiert zu w-make.com
- deploy-vps.sh: updates-api wird jetzt auch gebaut und deployed
2026-08-22 18:05:59 +02:00
Jan Wagner 78b857a80c docs: Phase 1 completion summary
Documented successful deployment of Links Management CMS:
- Backend API fully tested (7/7 tests passing)
- Admin UI deployed at updates.w-make.com/admin/links
- Homepage integration verified
- API endpoints documented
- Next steps outlined for Phase 2
2026-08-22 17:00:27 +02:00
Jan Wagner 97944875ca feat: Phase 1 - Admin CMS with Links Management
Backend (updates-api):
- Add links table schema with categories, visibility, sorting
- Implement full CRUD API for links (/v1/links, /v1/admin/links)
- Create admin UI for links management (/admin/links)
- Add navigation between Updates and Links admin pages
- Add comprehensive tests for links API (7/7 passing)

Frontend (Next.js):
- Create API client for fetching links from updates-api
- Add LinksSection component with category icons
- Integrate links into homepage (between Notes and CTA)
- Add i18n entries for links section (DE/EN)
- ISR caching: 60s for links, 5min for updates

Features:
- Links organized by category (external/internal/resource/tool)
- Visibility toggle (show/hide on homepage)
- Sort order support
- Optional icons and descriptions
- Responsive grid layout (1/2/3 columns)

Testing:
- All existing tests pass
- New links API tests cover CRUD + validation
- Production build successful

Phase 1 Complete: Links management ready for deployment
Next: Phase 2 (Markdown editor + media upload)
2026-08-22 16:56:00 +02:00
Jan Wagner 1f37edfa46 docs: add VPS deployment guide and script
- deploy-vps.sh: automated deployment script
- DEPLOYMENT.md: comprehensive deployment documentation
  - Manual and automated deployment steps
  - Validation checklist
  - Troubleshooting guide
  - Expected metrics after 7 days

Ready for VPS deployment via SSH
2026-08-22 16:32:46 +02:00
Jan Wagner 4717404cc3 feat: complete SEO and mobile Quick Wins
Meta & Social:
- Update page metadata with new pain-point focused descriptions
- Add Twitter Card (summary_large_image) support
- Update OG image copy to match new hero
- Add proper image dimensions (1200x630) for all platforms

Mobile Optimization:
- Responsive typography with clamp() for display headings
- Ensure 44x44px minimum touch targets (WCAG 2.1 AA)
- Reduce excessive whitespace on mobile viewports
- Better section padding scaling with viewport units

All tests passing (17/17), ready for production deploy.
2026-08-22 16:27:00 +02:00
Jan Wagner 7228fee77a feat(homepage): improve hero copy and CTA conversion
- Rewrite hero H1: pain point instead of jargon ('Zahlen verschwinden')
- Expand aside: explain failure mode ('stille Korrekturen')
- Add prominent demo CTA after hero (batch.w-make.com)
- Enhance final CTA with benefit checklist (2-day response, honest assessment)
- Add hover states to CTA button
- All changes bilingual (DE/EN)

Impact: Clearer value prop for non-glass industry decision-makers
2026-08-22 16:24:38 +02:00
Jan Wagner c822a110ce chore: add ES module type, health endpoint, and security docs
- Add 'type: module' to package.json to fix Node.js warnings
- Add /api/health endpoint for container health checks
- Document SMTP credential security best practices
- Remove .next build artifacts (295MB saved locally)
2026-08-22 16:20:24 +02:00
Jan WagnerandCursor 042ea88d94 feat(site): rewrite public copy around the batch chain
Replace slogan-heavy bilingual copy with concrete industrial prose on home, about, work, notes, and contact, without invented metrics or em dashes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 19:05:53 +02:00
Jan WagnerandCursor 7e8313c96e feat(updates): add Authelia-backed markdown editor
Product news is written at /admin behind Traefik forward-auth, while
the public JSON and RSS feeds stay unauthenticated.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 11:27:09 +02:00
Jan WagnerandCursor 0482b780f4 feat(site): tighten proof, contact, and inquiry delivery
Lead with Batch on the home page, drop the product changelog, add a
domain note, and stop reporting success when SMTP fails.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 11:12:40 +02:00
Jan WagnerandCursor aa55c29dbf fix(deploy): keep VPS env files out of the portfolio image
Docker copied the host .env into the standalone image, which would
ship SMTP and admin credentials in the layer cache.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 03:26:49 +02:00
Jan WagnerandCursor b52f93989c fix(deploy): persist inquiries and pass SMTP into the portfolio container
The contact form needs a durable SQLite volume and Strato credentials
on the VPS, otherwise production inquiries vanish or never leave the box.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 03:23:07 +02:00
Jan WagnerandCursor 5657b1d202 feat(portfolio): rebuild w-make.com as a bilingual editorial studio
Give clients a real IA, SMTP contact to eldov@w-make.de, and live Batch
evidence instead of a single-page placeholder.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 03:20:16 +02:00
Jan Wagner 1f6894d781 assets(portfolio): recapture batchmaker screenshots fullscreen 2026-08-16 02:02:38 +02:00
Jan Wagner 235c11134a fix(deploy): use shared proxy network only 2026-08-16 01:46:12 +02:00
Jan Wagner 9bc9838d8d feat(portfolio): add product updates feed 2026-08-16 01:43:16 +02:00
Jan Wagner 091d0bdeec fix(traefik): keep portfolio host rule valid 2026-08-16 01:02:54 +02:00
Jan Wagner f0708049d1 feat(portfolio): expand project stories and services 2026-08-16 01:02:31 +02:00
Jan Wagner 1485a424fd Fix domains: Route w-make.com to portfolio, remove .org 2026-08-16 00:48:42 +02:00
Jan Wagner 3a1154ef03 feat(web): add private company and portfolio presence 2026-08-16 00:35:49 +02:00
Jan Wagner f8c5aa0426 Initial commit from Create Next App 2026-08-15 23:43:20 +02:00