尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Next.js 16 (App Router) web surface for Motiion — marketing, talent app, and industry (talent buyer) dashboard. Shares one Supabase backend with the iOS app.
• / — Marketing / landing
• **/(app)/*** — Talent app (/home, /portfolio, inbox, discover)
• **/(buyer-app)/*** — Industry dashboard (/dashboard, /talent, /projects, /library)
• /profile/[slug] — Public talent profiles (Universal Links + OG)
• /casting/[id] — Public casting pages
• /shortlist/[token] — Client shortlist review
• **/admin/*** — Platform admin (analytics, verification)檢視完整 README ↗Next.js 16 (App Router) web surface for Motiion — marketing, talent app, and industry (talent buyer) dashboard. Shares one Supabase backend with the iOS app.
| Layer | Choice |
|---|---|
| Framework | Next.js 16, React 19, TypeScript |
| Styling | Tailwind CSS 4, design tokens in docs/design.md |
| Backend | Supabase (Postgres, Auth, Storage, Realtime) |
| Payments | Stripe Billing (web), RevenueCat (iOS IAP sync) |
| Analytics | PostHog + analytics_events table |
| Resend | |
| Errors | Sentry |
/ — Marketing / landing/(app)/* — Talent app (/home, /portfolio, inbox, discover)/(buyer-app)/* — Industry dashboard (/dashboard, /talent, /projects, /library)/profile/[slug] — Public talent profiles (Universal Links + OG)/casting/[id] — Public casting pages/shortlist/[token] — Client shortlist review/admin/* — Platform admin (analytics, verification)Product spec: docs/prd.md · Roadmap: docs/product-roadmap.md · Design tokens: docs/design.md
Copy .env.example to .env.local. Required keys depend on what you're testing:
| Variable | Required for | Notes |
|---|---|---|
NEXT_PUBLIC_SUPABASE_URL | Auth, data, storage | Same project as iOS |
NEXT_PUBLIC_SUPABASE_ANON_KEY | Client + SSR | Public anon key |
SUPABASE_SERVICE_ROLE_KEY | Admin analytics, webhooks | Server only — never NEXT_PUBLIC_* |
NEXT_PUBLIC_SITE_URL | OG metadata, share links | e.g. https://www.motiion.app |
STRIPE_SECRET_KEY | Checkout, portal | Test mode for local dev |
STRIPE_WEBHOOK_SECRET | Subscription + Identity sync | Point Stripe CLI or dashboard to /api/webhooks/stripe (include identity.verification_session.verified and identity.verification_session.requires_input) |
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY | Checkout + Identity modal | |
STRIPE_INDUSTRY_PRICE_ID | Industry Pro Checkout | Monthly Industry Professional price |
ENFORCE_INDUSTRY_PAYWALL | Gate industry app | true to require trial/subscription (settings stay reachable). Checkout is 60-day trial + optional promo codes (e.g. MOTIIONFOUNDER) |
REVENUECAT_WEBHOOK_SECRET | iOS entitlement sync | /api/webhooks/revenuecat |
RESEND_API_KEY | Invitation / message email | Graceful fail if unset |
NEXT_PUBLIC_POSTHOG_KEY | Product analytics | |
NEXT_PUBLIC_POSTHOG_HOST | PostHog region | Default https://us.i.posthog.com |
NEXT_PUBLIC_SENTRY_DSN / SENTRY_DSN | Error tracking | Same DSN or split client/server |
SENTRY_AUTH_TOKEN | Source map upload (CI) | Optional locally |
NOTION_* | Beta signup form |
See .env.example for the full list with comments.
npm install
cp .env.example .env.local
# Fill in Supabase keys at minimum
npm run dev
Open http://localhost:3000.
Schema lives in supabase/migrations/. Apply with the Supabase CLI against your project or local stack:
supabase db push
# or for local: supabase start && supabase db reset
Migrations are the source of truth for web + iOS shared schema.
| Command | Description |
|---|---|
npm run dev | Development server |
npm run build | Production build |
npm run start | Production server |
npm run lint | ESLint |
Deploy to Vercel. Set all production env vars in Vercel project settings. Stripe and RevenueCat webhooks should target your production /api/webhooks/* routes.
| Marketing only |
OPENAI_API_KEY | Resume PDF parsing | Onboarding |
BRANDFETCH_* | Company logos | Experience highlights |