Email Client
Communication · React + Node (Express) · 19 @molecule/* packages
Gmail-like email client with IMAP/SMTP, labels, compose, threads, and search — with built-in Stripe-backed subscription tiers
Try it
Opens instantly. Runs on sample data, so changes reset on reload.
What is inside
Screens (11)
- Landing
/ - Login
/login - Signup
/signup - ForgotPassword
/forgot-password - ResetPassword
/reset-password - Inbox
/inbox(signed in) - Compose
/compose(signed in) - ThreadView
/thread/:id(signed in) - Drafts
/drafts(signed in) - Starred
/starred(signed in) - Settings
/settings(signed in)
Data model (8 tables)
- devices — id, createdAt, updatedAt, userId, name, pushPlatform, pushSubscription, hasPushSubscription
- email_folders — id, user_id, name, color, created_at, updated_at, updatedAt
- email_label_assignments — id, label_id, email_id, created_at
- email_labels — id, user_id, name, color, created_at, updated_at, updatedAt
- emails — id, user_id, thread_id, from, to, cc, bcc, subject, …
- payments — id, createdAt, updatedAt, userId, transactionId, productId, platformKey, data, …
- resource_tags — id, tagId, resourceType, resourceId, createdAt
- tags — id, name, slug, color, description, createdAt, updatedAt
API (5 handlers)
- \_seed
api/src/handlers/_seed.ts - drafts
api/src/handlers/drafts.ts - emails
api/src/handlers/emails.ts - folders
api/src/handlers/folders.ts - labels
api/src/handlers/labels.ts
Subscription tiers
free / pro / team — gated by: maxDrafts, maxEmails, maxFolders, maxLabels, advancedFeatures, canExport, retentionDays
Built from 19 @molecule/* packages
@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-payments-stripe@molecule/api-push-notifications-web-push@molecule/api-resource-payment@molecule/api-resource-tag@molecule/api-resource-user@molecule/api-search-meilisearch@molecule/api-uploads-s3@molecule/app-billing-react@molecule/app-command-palette@molecule/app-file-upload@molecule/app-keyboard-shortcuts@molecule/app-markdown@molecule/app-virtual-scroll
Required secrets
DATABASE_URLPostgreSQL connection stringS3_BUCKETS3 bucket for email attachmentsMAILGUN_API_KEYMailgun API key for sending emails
The @molecule/* packages are Apache-2.0. The app you build from this template is yours to export and self-host. Licensing