Synaplan
기업을 위한 오픈소스 AI 플랫폼
임대 광고에 한 링크만 공유하면 세입자는 즉시 답변·시간 예약·알림, 한 채당 무료, 이후 월 99달러
Share one link in your rental ads. Renters get an instant reply, book their own viewing time and get reminders. You see every renter in one list. Free for one rental, CA$99 a month after that.
비즈니스GitHub @vacantless온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Multi-tenant SaaS scaffold for the lead-to-lease loop. Next.js (App Router) on Vercel · Supabase (Postgres + Auth + Row-Level Security).
This milestone is the spine: orgs + auth + per-tenant branding + tenant isolation enforced by Postgres RLS. M2 adds the CRM loop.
app/ landing, login, signup, onboarding, dashboard, auth routes
lib/supabase/ browser + server + middleware Supabase clients
middleware.ts refreshes the session, guards /dashboard + /onboarding
supabase/migrations/ 0001_init.sql — schema, RLS policies, helper functions
scripts/verify-rls.mjs the M1 acceptance test (org A cannot read org B)
Supabase dashboard → SQL Editor → New query → paste all of
supabase/migrations/0001_init.sql → Run. It creates the tables, enables
RLS, defines the policies, and grants the authenticated role its privileges.
Supabase → Authentication → Providers → Email → turn "Confirm email" OFF for now so signups log in instantly. (Re-enable before production.)
Copy .env.local.example to .env.local and fill from Supabase →
Project Settings → API:
NEXT_PUBLIC_SUPABASE_URL — Project URLNEXT_PUBLIC_SUPABASE_ANON_KEY — anon public keySUPABASE_SERVICE_ROLE_KEY — service_role key (only used by the RLS test;
never shipped to the browser)npm install
npm run dev # http://localhost:3000
Sign up → create an organization → land on the branded dashboard → add a property.
node --env-file=.env.local scripts/verify-rls.mjs
Creates two orgs under two users and asserts neither can read or write the
other's rows. Must print ✅ PASS.
vacantless).NEXT_PUBLIC_* env vars (Production + Preview). Do not add
the service_role key to Vercel.https://your-app.vercel.app/auth/callback).organization_id via the
user_org_ids() SECURITY DEFINER helper (no policy recursion).