Home Features Why Change Self Host Contact

Irsal MailServer Documentation

Irsal MailServer is a modern, stateless JMAP-based webmail, calendar, contacts, and files client built for speed, multi-account management, and enterprise-grade security.

Quick Overview

🚀 Core Stack

Built with Next.js (App Router), TypeScript, and Tailwind CSS. Powered by the JMAP protocol (RFC 8620) for real-time synchronization.

🔐 Security & Auth

Supports OAuth2 / OIDC with PKCE (Keycloak, Authentik), TOTP 2FA, SPF/DKIM/DMARC validation, and encrypted settings synchronization.

🌍 Multi-Account

Unified mailbox, cross-account aggregate views (Unread, Starred, All Mail), and delegated group account sharing.

Key Features

Repositories & Architecture

Repository Purpose Tech / Target
irsalmail-server/webmail Primary Webmail Application Next.js, React, Tailwind CSS
irsalmail-server/native Desktop & Mobile Client React Native, Expo SDK
irsalmail-server/plugins Plugin API & Manifest Templates TypeScript, JavaScript
irsalmail-server/relay Push Notification Relay Firebase Cloud Messaging (FCM) Bridge
irsalmail-server/legacy-proxy IMAP / SMTP Bridge Legacy Client Compatibility

Container Deployment Parameters

The container image runs statelessly on port 3000 by default:

# Default Helm / Container Parameters
image.repository: "ghcr.io/irsalmail-server/webmail"
service.type: "ClusterIP"
service.port: 80
service.targetPort: 3000

Plugin Quick Start

Irsal MailServer supports custom plugins via a manifest.json entrypoint:

{
  "id": "my-plugin",
  "name": "My Plugin",
  "version": "1.0.0",
  "type": "hook",
  "permissions": ["email:read"],
  "entrypoint": "index.js"
}