Writing Tool
Creative Tools · React + Node (Express) · 17 @molecule/* packages
iA Writer-like distraction-free writing with markdown, focus mode, and document management — with built-in Stripe-backed subscription tiers
Try it
Opens instantly. Runs on sample data, so changes reset on reload.
What is inside
Screens (12)
- Landing
/ - Login
/login - Signup
/signup - ForgotPassword
/forgot-password - ResetPassword
/reset-password - Library
/library(signed in) - Editor
/editor/:id(signed in) - FocusMode
/editor/:id/focus(signed in) - Stats
/stats(signed in) - Settings
/settings(signed in) - VersionHistory
/editor/:id/history(signed in) - Billing
/billing(signed in)
Data model (7 tables)
- devices — id, createdAt, updatedAt, userId, name, pushPlatform, pushSubscription, hasPushSubscription
- document_exports — id, document_id, format, status, s3_key, created_at
- document_versions — id, document_id, version_number, body_md, snapshot_size, created_at
- documents — id, owner_id, folder_id, title, body_md, excerpt, word_count, character_count, …
- folders — id, owner_id, parent_id, name, position, created_at, updated_at
- resource_tags — id, tagId, resourceType, resourceId, createdAt
- tags — id, name, slug, color, description, createdAt, updatedAt
API (3 handlers)
- documents
api/src/handlers/documents.ts - exports
api/src/handlers/exports.ts - folders
api/src/handlers/folders.ts
Subscription tiers
free / pro / team — gated by: maxDocuments, maxExports, maxFolders, advancedFeatures, canExport, retentionDays
Built from 17 @molecule/* packages
@molecule/api-ai-summarization@molecule/api-database-postgresql@molecule/api-email-templates@molecule/api-emails-mailgun@molecule/api-entitlements@molecule/api-payments-stripe@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-data-table@molecule/app-keyboard-shortcuts@molecule/app-markdown@molecule/app-virtual-scroll
Required secrets
DATABASE_URLPostgreSQL connection stringS3_BUCKETS3 bucket for file attachments
The @molecule/* packages are Apache-2.0. The app you build from this template is yours to export and self-host. Licensing