尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证A subscription library of ready-to-use engagement activities for care homes: puzzles and games, quizzes, sing-alongs, reminiscence newsletters and talking communication boards, ready to print or play on screen.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗A subscription platform for care home activity teams: a library of dementia engagement templates (Reminiscence, Sensory, Music & Movement, Arts & Crafts, Conversation & Games) plus a Professional Services directory, gated behind a monthly Stripe subscription.
This is a real, deployable Next.js app — accounts, login, Stripe Checkout + billing portal, and a Postgres/SQLite-backed database. It does not yet include your actual template PDF files or your final 2,000-item catalog — see "What's stubbed" below.
npm install
cp .env.example .env
Fill in:
DATABASE_URL — leave as the SQLite default for local devNEXTAUTH_SECRET — generate with openssl rand -base64 32STRIPE_SECRET_KEY / NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY — from your
Stripe dashboard (use test keys first)STRIPE_PRICE_STANDARD / STRIPE_PRICE_PREMIUM — create two recurring
monthly Prices in Stripe (Products → Add product → Recurring), one for
Standard (£18) and one for Premium (£28), then paste each Price ID hereSTRIPE_WEBHOOK_SECRET — see step 4 belownpx prisma generate
npx prisma migrate dev --name init
This creates dev.db (SQLite) locally with the User and Download tables.
Subscription status only updates when Stripe sends a webhook. For local dev, use the Stripe CLI:
stripe listen --forward-to localhost:3000/api/stripe/webhook
Copy the whsec_... it prints into STRIPE_WEBHOOK_SECRET in .env.
npm run dev
Visit http://localhost:3000. Sign up → you'll land on /pricing → Stripe
Checkout (use Stripe's test card 4242 4242 4242 4242, any future date/CVC)
→ webhook flips your subscription to active → /dashboard unlocks.
app/page.tsx — public marketing/landing pageapp/signup, app/login — account creation & sign-in (NextAuth credentials)app/pricing — shown to signed-in users without an active subscription;
triggers Stripe Checkoutapp/api/stripe/checkout — creates the Stripe Checkout sessionapp/api/stripe/webhook — Stripe calls this on payment/subscription events;
this is the only place subscription status is written, so it stays in
sync even if a user closes the tab mid-checkoutapp/api/stripe/portal — "Manage subscription" button opens Stripe's
hosted billing portal (update card, cancel, view invoices)middleware.ts + app/dashboard/layout.tsx — require login and an
active/trialing subscription before any /dashboard/* page renderslib/data.ts — the category/template/services content (currently sample
data standing in for your real catalog — see below)lib/data.ts has ~30 sample templates across
5 categories, matching your format. Swap this for your real ~2,000, ideally
loaded from a database table or CMS rather than hardcoded once the catalog
is that large./api/downloads currently just logs a download
event. Wire it up to serve/redirect to your actual PDF files (e.g. signed
URLs from S3, Vercel Blob, or Cloudflare R2) once you have the real assets.DATABASE_URL at Postgres (Vercel Postgres, Supabase, Neon, Railway all
work) and change provider = "sqlite" to provider = "postgresql" in
prisma/schema.prisma.Not tied to a specific host. The straightforward path:
.env variables in your host's environment variable settingsDATABASE_URL at a real Postgres instancehttps://yourdomain.com/api/stripe/webhook, and use the webhook secret
it gives you (this is different from your local Stripe CLI secret)sk_test_...) to live (sk_live_...) once
you're ready to accept real payments