Mental Health Journal
Health & Fitness · React + Node (Express) · 18 @molecule/* packages
Daylio-like mental health journal with mood tracking, journal entries, pattern analysis, and wellness insights — with built-in Stripe-backed subscription tiers
Try it
Opens instantly. Runs on sample data, so changes reset on reload.
What is inside
Screens (14)
- Landing
/ - Login
/login - Signup
/signup - ForgotPassword
/forgot-password - ResetPassword
/reset-password - Home
/home(signed in) - Journal
/journal(signed in) - EntryComposer
/journal/new(signed in) - EntryDetail
/journal/:id(signed in) - Insights
/insights(signed in) - Prompts
/prompts(signed in) - Settings
/settings(signed in) - Calendar
/calendar(signed in) - Profile
/profile(signed in)
Data model (8 tables)
- activities — id, user_id, slug, label, icon, category, sort_order, is_active, …
- devices — id, createdAt, updatedAt, userId, name, pushPlatform, pushSubscription, hasPushSubscription
- goal_progress — id, goal_id, user_id, period_starts_at, value, hit_target, computed_at, created_at
- journal_entries — id, user_id, written_at, title, body, body_encrypted, body_iv, mood_id, …
- mood_entries — id, user_id, recorded_at, score, energy, anxiety, label, activities, …
- notifications — id, user_id, kind, payload, read_at, created_at
- prompts — id, slug, category, body_template, is_active, locale, created_at, updatedAt
- wellness_goals — id, user_id, title, description, category, kind, target_value, period, …
API (1 handlers)
- journal
api/src/handlers/journal.ts
Subscription tiers
free / pro / team — gated by: maxActivities, maxEntries, maxGoals, maxInsights, maxMood, advancedFeatures, canExport, retentionDays
Built from 18 @molecule/* packages
@molecule/api-ai-anthropic@molecule/api-cron-node-cron@molecule/api-database-postgresql@molecule/api-email-templates@molecule/api-emails-mailgun@molecule/api-encryption-aes@molecule/api-entitlements@molecule/api-import-export-csv@molecule/api-payments-stripe@molecule/api-push-notifications-web-push@molecule/api-reporting-database@molecule/api-resource-payment@molecule/api-resource-user@molecule/app-billing-react@molecule/app-calendar@molecule/app-charts@molecule/app-command-palette@molecule/app-date-range-picker
Required secrets
DATABASE_URLPostgreSQL connection stringENCRYPTION_KEYAES encryption key for journal dataVAPID_PUBLIC_KEYVAPID public key for push notificationsVAPID_PRIVATE_KEYVAPID private key for push notifications
The @molecule/* packages are Apache-2.0. The app you build from this template is yours to export and self-host. Licensing