Installation¶
System requirements¶
| Component | Requirement |
|---|---|
| Node.js | 22.0 or higher |
| PostgreSQL | 15 or higher |
| npm | 9.0 or higher |
| OS | macOS, Linux, Windows |
Method 1: Local development¶
Install Node.js dependencies¶
Set up PostgreSQL¶
Create the database:
Initialize all schemas:
This executes six schema files:
schema.sql— Core tables (emails, tasks, auto-replies, app settings)schema-better-auth.sql— Better Auth tables (users, sessions, accounts, organizations)schema-settings.sql— User settings, API keys, email signaturesschema-calendar.sql— Calendar eventsschema-streamboost.sql— Stream state, announcements, platform credentials, milestonesschema-threading.sql— Email threading (Message-ID, In-Reply-To, References)
Start the servers¶
# Start both frontend and backend concurrently
npm run dev:all
# Or start them separately
npm run dev # Frontend (Vite) — port 5173
npm run server # Backend (Express) — port 3001
Method 2: Docker¶
# Build and start all services
docker-compose up -d
# Access the application
# Frontend: http://localhost:5173
# Backend: http://localhost:3001
Method 3: Production with PM2¶
# Install PM2 globally
npm install -g pm2
# Build the frontend
npm run build
# Start with PM2
pm2 start pm2.ecosystem.config.cjs
n8n workflow setup (optional)¶
n8n is optional in v3.0
Core email automation now runs as a built-in service. n8n is only needed for advanced workflows like StreamBoost post dispatching and custom automations.
To set up n8n:
- Install n8n (self-hosted or cloud)
- Import workflow files from
n8n-workflows/ - Configure credentials in n8n
- Activate the workflows
Verify installation¶
Next steps¶
- Quickstart — Get running in 10 minutes
- Configuration — Environment variables and API keys
- Architecture — Understand the system design