Commit Graph

25 Commits

Author SHA1 Message Date
Jeff Emmett 6ab2a8ff3b feat: add booking details (ticket, weeks, price) to confirmation email
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 20:58:48 -08:00
Jeff Emmett 8b1d45485c feat: switch domain from votc.jeffemmett.com to valleyofthecommons.com
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 20:43:28 -08:00
Jeff Emmett 685bb535f8 fix: add missing google-sheets.js to repo
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 20:41:44 -08:00
Jeff Emmett b44b4bb9e6 fix: auto-run Mollie DB migration on app startup
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 20:41:01 -08:00
Jeff Emmett 87f3fb95c2 feat: complete Mollie payment integration
Add payment routes, checkout redirect, return page, DB schema updates,
and environment configuration for Mollie payment processing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 20:36:41 -08:00
Jeff Emmett 2463980838 fix: use DATABASE_SSL env var instead of NODE_ENV for pg SSL 2026-02-23 20:35:35 -08:00
Jeff Emmett 08a757e12c Add Docker healthcheck to docker-compose.yml
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 18:00:42 -07:00
Jeff Emmett 4e69492bd0 chore: migrate SMTP from mx.jeffemmett.com to mail.rmail.online
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 20:15:25 +00:00
Jeff Emmett c1794752f3 security: remove real SMTP host/user from .env.example
Replace mx.jeffemmett.com and noreply@jeffemmett.com with generic
placeholders to avoid GitGuardian SMTP credential alerts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 12:11:09 -07:00
Jeff Emmett 5c30d2dfcc fix: add TLS rejectUnauthorized:false for Mailcow self-signed cert
Nodemailer rejects self-signed certificates by default, causing
STARTTLS handshake failures with Mailcow Postfix. Added tls option
to both waitlist and application SMTP transports.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 03:36:28 -07:00
Jeff Emmett 670341a26a fix: update package-lock.json for nodemailer dependency
Lock file was missing the resolved nodemailer@6.10.1 entry,
causing Docker build to fail with `npm ci`.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 16:31:22 -07:00
Jeff Emmett 195b3ad00a fix: disable SSL for local PostgreSQL connection
The votc-db container doesn't support SSL connections, causing
"The server does not support SSL connections" errors on the
waitlist signup endpoint in production.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 16:12:36 -07:00
Jeff Emmett 70349c2443 Replace Resend references with Mailcow SMTP config
- docker-compose: RESEND_API_KEY → SMTP_* env vars
- .env.example: Resend section → SMTP section
- application.js + waitlist-db.js: rename resend_id → message_id
- schema.sql: rename resend_id column → message_id

App already used nodemailer/SMTP — this just cleans up legacy naming.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 16:13:09 -07:00
Jeff Emmett 620bc229ed feat: replace Resend SDK with Mailcow SMTP (nodemailer)
Swap email sending from Resend API to self-hosted Mailcow at
mx.jeffemmett.com. Uses SMTP_PASS env var instead of RESEND_API_KEY.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 09:48:53 -07:00
Jeff Emmett be4e3788be Update site font to Urbanist and enlarge header logo
- Replace Playfair Display/Cormorant Garamond with Urbanist font
- Increase logo size from 24-40px to 36-60px (desktop)
- Increase mobile logo size from 18-28px to 28-40px
- Slightly increase header padding

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 16:52:38 +00:00
Jeff Emmett 0debf5b456 Add separate first name and last name fields to application form
Fixes validation error when last name was missing because single
name field was being split.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 14:16:52 +00:00
Jeff Emmett 816bc986e3 Hide intro video on scroll
Loading screen now dismisses when user scrolls, uses mouse wheel,
or swipes on mobile - in addition to skip button and timer.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 14:14:46 +00:00
Jeff Emmett 206ca2b9cc Simplify Docker network config to use traefik-public only
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 14:09:09 +00:00
Jeff Emmett fdd75a135e Fix Docker network subnet allocation
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 14:08:37 +00:00
Jeff Emmett 8f67250928 Add application system with PostgreSQL and email integration
- Replace BlockSurvey with custom application form (apply.html)
- Add admin dashboard for reviewing applications (admin.html)
- Create PostgreSQL schema for waitlist, applications, email logging
- Implement application API with Resend email confirmations
- Replace Google Sheets waitlist with PostgreSQL backend
- Update docker-compose with PostgreSQL service
- Update server.js with new API routes
- Update index.html to link to internal apply.html

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 14:07:06 +00:00
Jeff Emmett 4f6d9f374c Update package-lock.json with express dependency
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 12:55:54 +00:00
Jeff Emmett a266879c9c Remove env_file requirement from docker-compose
Static site works without env vars. API features can be added later.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 12:52:22 +00:00
Jeff Emmett 033b9bccd3 Import Valley of the Commons website from votc repo
Full website with:
- Landing page, game, privacy policy
- Speakers and community partners sections
- API routes for waitlist, game chat, GitHub sharing
- Docker deployment with Express server
- Traefik labels for votc.jeffemmett.com

Replaces initial splash page with complete site.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 12:48:08 +00:00
Jeff Emmett 8fab13d1f5 Add backlog with Postiz deployment task
- Initialize backlog.md for project tracking
- Add task for porting Postiz to proper domain and connecting social channels
- Current temp deployment at votc-socials.jeffemmett.com

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 18:27:24 +00:00
Jeff Emmett 1fa83e186a Initial commit: Valley of the Commons splash page
- Static HTML/CSS splash page with email signup
- Dockerized with nginx for production deployment
- Traefik labels configured for reverse proxy integration
- Clean, minimal design with earthy color palette

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 17:36:15 +00:00