WallpaperMachine
The wallpapers you love. A new home on your Mac.
Plan who sits where at your wedding, with every guest drawn at their seat. Free floor plan, place cards and a find-my-seat page for guests.
LifestyleJavaScript · PLpgSQLGitHub @Sandro0228OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Supra planning app
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Plan who sits where, with every guest drawn at their seat. Couples sign in, build their floor plan, and share a "find my seat" page with guests.
Plain static site (no build step) + Supabase for sign-in and storage. Hosted on Vercel.
| File | What it is |
|---|---|
index.html, dash.js | Landing page, sign-in, and "My events" |
app.html, app.js | The planner (/edit/<id>) and the public guest page (/e/<code>) |
assets.js | All illustrations, embedded |
brand/, brand.js, brand.css | Supra logo (light and dark-surface versions), emblem, favicon PNGs; the shared logo helper and theme switching |
favicon.svg, favicon.ico | Browser icon (emblem on warm ivory) |
i18n.js | English and Georgian text |
config.js | Your Supabase URL and public key |
supabase/schema.sql | Database table and access rules |
supabase/002_guest_lookup.sql | Private guest search (run after schema.sql) |
supabase/003_public_looks.sql | Guest page shows each seated guest's drawing (no names) |
supabase/004_seat_choice.sql | Option to tell guests only their table (they choose a seat) |
supabase/005_table_people.sql | Guest drawings for the "choose your seat" mode |
supabase/006_share_lifecycle.sql | Guest-link lifecycle (draft/published/revoked/expiry/rotate), privacy presets, organiser preview, backoff, counts-only telemetry |
docs/ROADMAP.md | Findings, risk register and staged plan toward a commercial release |
tests/ | Database tests (tests/sql/run.sh) and browser tests (python3 tests/e2e/run_all.py) |
vercel.json | Clean URLs for /edit/… and /e/… |
supabase/schema.sql, then supabase/002_guest_lookup.sql, 003_public_looks.sql, 004_seat_choice.sql, 005_table_people.sql and 006_share_lifecycle.sql (rollback notes are at the top of each file).https://supra.vercel.app) and add https://supra.vercel.app/** to Redirect URLs.config.js.Optional: enable Google sign-in under Authentication → Providers, then set googleSignIn: true in config.js.
Each plan is readable only by its owner (row-level security). The guest page never downloads the guest list. It gets the room layout: table names and each seated guest's drawing, without names and asks the server for one name at a time:
Meals, allergies, groups, notes, seating rules and the waiting list are never sent to the guest page.
tests/sql/run.sh -h <host> -p <port> -U postgres against an empty Postgres 15+.pip install playwright && python3 -m playwright install chromium, then python3 tests/e2e/run_all.py. The tests use a stand-in for Supabase, so they need no account.