An evidence‑based life‑path builder that helps you choose the right habits backed by science.
AI translation
Evidence-based life path builder. Choose the right habits backed by science.
HealthTypeScript · JavaScriptGitHub @genetta-incOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Shukan is a modern habit‑tracking app that helps you build better habits one day at a time.
AI translation
Shukan - A modern habit tracking app. Build better habits, one day at a time.
Taken from the repository README
Loading the full README.
Read the full README ↗This is a Next.js project bootstrapped with create-next-app.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
This app uses Stripe for subscriptions (monthly/annual) and a Lifetime one-time
purchase. The subscriptions Supabase table is the source of truth for billing
state; the app never queries Stripe at render time.
Add Stripe keys to .env.local (see .env.local.example):
STRIPE_SECRET_KEY, STRIPE_WEBHOOK_SECRET, SUPABASE_SERVICE_ROLE_KEY,
NEXT_PUBLIC_TRIAL_DAYS (default 14).
Create the Products / Prices (all with tax_behavior: inclusive, immutable):
STRIPE_SECRET_KEY=sk_test_xxx npx tsx scripts/stripe-setup.ts
Copy the printed price_... IDs into .env.local as STRIPE_PRICE_MONTHLY,
STRIPE_PRICE_ANNUAL, STRIPE_PRICE_LIFETIME. Without a key the script exits
with a descriptive error and does not call Stripe.
Forward webhooks locally:
stripe listen --forward-to localhost:3000/api/stripe/webhook
Migrations for subscriptions / stripe_events live in
supabase/migrations/. Apply them with supabase db push (run on the main
branch after merge for the dev project).
To learn more about Next.js, take a look at the following resources:
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.