Architecture
A self-hosted Charley deployment consists of three components:| Component | What it is | Suggested deployment |
|---|---|---|
| API | Express/Node backend | Docker container (ECS, Cloud Run, Railway, etc.) |
| Dashboard | React SPA | S3 + CDN, Netlify, Vercel, etc. |
| Database | PostgreSQL 16 | AWS RDS, Supabase, self-managed Postgres |
- Auth0 — authentication and user management
- Stripe — billing (or disable billing entirely for internal deployments)
- AWS SES — transactional email (or swap for another SMTP provider)
Prerequisites
- Node.js 18+
- PostgreSQL 16
- Docker (for containerized deployments)
- An Auth0 tenant
- A Stripe account (optional)