Wedding management app for RSVP, guest lists, table seating, WhatsApp outreach, and event-day operations. Vite 8, vanilla JS/CSS, Hebrew RTL first, minimal runtime dependencies (3).
Node 22+ is the supported local and CI runtime.
git clone https://github.com/RajwanYair/Wedding.git
cd Wedding
# Install dependencies (shared tooling lives at ../MyScripts/node_modules/)
# If you cloned into the recommended parent workspace:
npm install --prefix ../MyScripts # one-time shared tooling
npm install # project devDependencies
# β OR β install standalone (CI / first-time setup):
npm ci
# Start local development
npm run devnpm run lint # HTML + CSS + JS + Markdown β 0 errors, 0 warnings
npm run format:check # Prettier formatting check (add to pre-commit hook)
npm test # 4187+ Vitest unit tests
npm run build # Vite production bundle β dist/index.html HTML shell
css/ layered stylesheets
src/main.js bootstrap entry
src/core/ app primitives: store, nav, events, i18n, ui
src/sections/ feature modules with mount/unmount lifecycle
src/services/ auth, sheets, backend, presence, supabase
src/templates/ lazy-loaded section markup
src/modals/ lazy-loaded modal markup
tests/ Vitest + Playwright coverage
- Runtime entry is
src/main.js; feature UIs mount fromsrc/sections/and lazy templates/modals undersrc/templates/andsrc/modals/ - User-facing strings are localized through
src/i18n/; Hebrew is the default UI, English is the supported alternate UI toggle - Data persists locally and can sync through the configured backend path; service worker assets live under
public/ - CI expects
npm run lint,npm test, andnpm run buildto stay green
- ARCHITECTURE.md: runtime structure, module boundaries, data flow
- CONTRIBUTING.md: contributor workflow, testing rules, review checklist
- CHANGELOG.md: release history and shipped changes
- ROADMAP.md: active production roadmap and upcoming priorities
Detailed runtime and data-model notes intentionally live outside the README so this file stays public-facing and production-relevant.
| Name | CSS class | Primary color |
|---|---|---|
| Default | (none) | Purple #8b5cf6 |
| Rose Gold | theme-rosegold |
#d4a574 |
| Gold | theme-gold |
#f59e0b |
| Emerald | theme-emerald |
#10b981 |
| Royal Blue | theme-royal |
#3b82f6 |
| Problem | Fix |
|---|---|
npm install fails |
Run from parent MyScripts/ dir β deps are shared via ../MyScripts/node_modules/ |
| Lint errors after pull | rm -rf node_modules/.cache then re-run npm run lint |
Tests show pool deprecated |
Suppressed via pool: "forks" + --no-warnings β should not appear |
| SW not updating | Bump CACHE_NAME in public/sw.js to match the new version |
| OAuth redirect fails | Verify GOOGLE_CLIENT_ID / FB_APP_ID / APPLE_SERVICE_ID in src/core/config.js |
| Hebrew text reversed | Ensure dir="rtl" and lang="he" on <html> element |
| Vite build OOM | Increase Node memory: NODE_OPTIONS=--max-old-space-size=4096 npm run build |
MIT Β© RajwanYair