
Self-Hosted Server Guide
Take full control of your private communication. Deploy your own zero-knowledge, end-to-end encrypted backend for the CrypterChat app.
How CrypterChat Works
CrypterChat is designed with a decoupled architecture. The iOS and Android mobile apps act strictly as dumb clients. They handle the UI, push notifications, and local keystore management, but they rely entirely on your private server to route encrypted messages.
Prerequisites
Quick Start Guide
git clone https://github.com/ericksonholding/crypterchat-server.git cd crypterchat-server
npm installCopy the example environment file and add your PostgreSQL connection string.
cp .env.example .env # Edit .env and set DATABASE_URL
npm run db:migratenpm run startEnvironment Variables
| Variable | Description | Required |
|---|---|---|
| PORT | The port the server binds to (default: 3000) | No |
| DATABASE_URL | PostgreSQL connection string | Yes |
| JWT_SECRET | Secret used to sign client authentication tokens | Yes |
| REDIS_URL | Redis connection for WebSocket pub/sub | No |
Once your server is running, open the CrypterChat app on your iOS or Android device. Navigate to Settings > Advanced > Custom Server and enter your server URL (e.g., https://chat.yourdomain.com).
Docu: Ecosystem & Public Repositories
Access complete technical documentation powered by Docsify covering chatscan, WebApp, smart contracts, cryptographic protocols, and security rules.