尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗A private community for founders: small cohorts, an honest feed, and people who show up for each other. $39/month, with a card-free trial. Live at quorumhq.co.
The launch plan, what's done, and what's left live in LAUNCH.md.
The in-app look is described in
design/REDESIGN-BUILD-GUIDE.md.
vercel.jsonInstall dependencies:
npm install
Copy the env file and fill it in:
cp .env.local.example .env.local
| Variable | What it's for |
|---|---|
NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY | Supabase project |
SUPABASE_SERVICE_ROLE_KEY | Server-only admin client (admin panel, webhooks, crons) |
ADMIN_CODE | Admin panel passphrase, used until one is saved in the database |
NEXT_PUBLIC_APP_URL | Base URL for links in emails and Stripe redirects |
STRIPE_SECRET_KEY, NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY | Stripe API keys |
STRIPE_WEBHOOK_SECRET | Verifies /api/webhooks/stripe |
STRIPE_MEMBER_PRICE_ID, STRIPE_MEMBER_ANNUAL_PRICE_ID, STRIPE_FOUNDING_PRICE_ID, STRIPE_PARTNER_PRICE_ID | Plan prices (lib/plans.ts) |
RESEND_API_KEY | Sends email |
CRON_SECRET | Bearer token the /api/cron/* routes require |
NEXT_PUBLIC_SENTRY_DSN | Sentry project (optional locally) |
Set up the database in the Supabase SQL editor: run supabase/schema.sql,
then each file in supabase/migrations/ in numeric order. The project isn't
linked to the Supabase CLI, so migrations are pasted by hand.
Auth email templates are in supabase/templates/; its README says where
each one goes in the dashboard.
Start the dev server:
npm run dev
scripts/db.sh local builds a fresh local Postgres 16 database (brew install postgresql@16) with a small stand-in for Supabase's roles, auth and
storage, applies schema.sql and every migration in order, then runs the RLS
tests in supabase/tests/. The tests roll everything back, so their last line
is an error that reads ALL <n> TESTS PASSED on success.
Staging is a separate Supabase project, configured in .env.staging.local (see
.env.staging.local.example). scripts/db.sh staging:migrate FILE... applies
migrations there and scripts/db.sh staging:test runs the same tests. The
script refuses any setting that points at production. Never run the tests
against production.
Pushing main deploys to production on Vercel. A migration has to be applied
in Supabase before the deploy that depends on it, since signup runs through
the handle_new_user() trigger.
/pending → approved by an admin →
straight into the app, where a guided tour starts. The admin panel can switch
the platform to open mode, where new members are approved on arrival
(lib/platform.ts).lib/entitlements.ts is the one source of truth for what an
account can do. A member or a live trial gets full access; anyone else can
read but not write. There is no free tier.proxy.ts (Next 16's name for middleware) refreshes the
Supabase session cookie on each request.app/(app)/, legal pages under
app/(legal)/, the admin panel under app/admin/, and API routes under
app/api/. The signed-out landing page is components/landing/.