12 months
108.00 EUR
59.00 EUR
4.92 EUR / mo
RMS Mail
All your inboxes in one place. Unified inbox, cross-account search, project groups. PostgreSQL + Redis.
GitHubRMS Mail Unified for those who manage multiple email accounts and are tired of switching between them. All emails in one interface, unified search, unified notifications — without losing isolation between accounts.
Agencies and freelancers with multiple client accounts. Developers with infrastructure email, work and personal inboxes. Support teams with multiple addresses. Anyone who has more than two inboxes and hates switching between them.
# 1. Clone the repository and navigate to the project directory
git clone https://github.com/max-ramas/rms-mail-public.git
cd rms-mail-public
# 2. Set up your environment variables
cp .env-u.example .env
# 3. Configure required variables inside the .env file:
# - `POSTGRES_PASSWORD` (To generate a secure random 32-byte hex key, run: openssl rand -hex 16)
# - `REDIS_PASSWORD` (To generate a secure random 32-byte hex key, run: openssl rand -hex 16)
# - `ENCRYPTION_KEYS` or `ENCRYPTION_KEY`(To generate a secure random 32-byte hex key, run: openssl rand -hex 32)
# - `JWT_SECRET` (To generate a secure random 32-byte hex key, run: openssl rand -hex 32)
# - `CAMO_HMAC_KEY` (To generate a secure random 32-byte hex key, run: openssl rand -hex 32)
# Also add ALLOWED_ORIGINS and FRONTEND_URL (your domain name)
# 4. Copy the Unified-specific compose configuration
cp docker-compose-u.yml docker-compose.yml
# 5. Fire it up!
docker compose up -d
# Images: maxramas/rms-mail:u-latest + u-ui-latestOpen http://localhost:3000. Done.
For production — set up a reverse proxy on port 3000 (nginx, Caddy, aaPanel). Setup instructions in the GitHub repository.
Mono — one user, one inbox, isolation. Unified — one user, many accounts, unified workspace. You see all inboxes in one feed, search across all accounts at once, create project groups where emails from different inboxes are collected together.
Unified inbox — all emails from all accounts in one feed with real-time counters.
Cross-account search — PostgreSQL tsvector with GIN indexes across all accounts at once. No need to switch and search each one separately.
Project groups — group emails from multiple accounts around one project or client. Aggregated real-time counters via subqueries.
Bulk operations across accounts — select and process emails from different inboxes with one action.
PostgreSQL + Redis — hash partitioning of the email table (64 partitions), Redis AOF persistence, Asynq queues for Telegram, webhooks, delayed sending.
OAuth 2.0 (BYOA) — custom OAuth application layer.
License limitation — Free and Premium plans with live limit checking.
Free | Premium | |
|---|---|---|
Accounts | 5 | unlimited |
Project groups | 1 | unlimited |
12 months
108.00 EUR
59.00 EUR
4.92 EUR / mo
6 months
54.00 EUR
34.00 EUR
5.67 EUR / mo
3 months
27.00 EUR
19.00 EUR
6.33 EUR / mo
1 month
9.00 EUR
9.00 EUR / mo