A Next.js + Supabase prototype for link-based group scheduling with project-based participant filtering.
- Name-only participant sign-in
- Create a meeting link from selected potential dates
- Each shared link has isolated participants, projects, and availability
- Click-and-drag availability painting in 30-minute blocks
- Group heatmap that recalculates from the currently checked participants
- Project creation and participant assignment
- Project filter that checks only the members of a selected project
- Supabase persistence with a local demo mode when env vars are absent
Install dependencies:
npm installCreate .env.local:
NEXT_PUBLIC_SUPABASE_URL=https://your-project-ref.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-keyIn Supabase, open the SQL editor and run:
-- paste supabase/schema.sqlRun the schema again after updates. It is written as a migration and will add the event-link tables/columns to an existing prototype database.
Start the app:
npm run dev- Push this repo to GitHub.
- Import it in Vercel as a Next.js project.
- Add
NEXT_PUBLIC_SUPABASE_URLandNEXT_PUBLIC_SUPABASE_ANON_KEYin Vercel project settings. - Deploy.
After deploy, open the site root, select potential dates, create a link, and share the generated ?event=... URL with the team.
The prototype uses only regular Supabase Postgres tables and client-side reads/writes. No file storage, edge functions, or paid-only services are required.
This intentionally matches the requested no-password flow. The included RLS policies allow anonymous users to read and edit scheduling data, which is suitable for a shareable prototype but not for private or sensitive schedules.