qvbvs/AuraMail

TypeScript

2

11 commits

updated Oct 1, 2026

See the code

See what people are saying

SourceMessageScoreDate

GitHub - qvbvs/AuraMail (r/SideProject)

Hi! I recently started building a project born out of pure frustration with modern email: **AuraMail**. I wanted to share why I decided to take this on, how it works, and get some early feedback from this community. # 😤 The Frustration: Where did email clients go wrong? Email is one of the few…

1

Oct 1, 2026

README

AuraMail

A private, local-first email client for the desktop.

Release Platform License


AuraMail


About

AuraMail is a native email client for Windows and Linux, built around privacy, performance, and productivity. Your mail lives locally — encrypted, searchable offline, and free of any unnecessary cloud layer.

Built with Electron, React, TypeScript, and SQLCipher.

Features

  • Encrypted by default — SQLCipher (AES‑256) database, credentials stored via the OS keychain (DPAPI / Secret Service / KWallet)
  • Real-time sync — IMAP IDLE push, automatic reconnect, sleep/wake recovery
  • Offline search — full-text search across your mailbox via SQLite FTS5
  • Rich composer — Tiptap editor with checklists, code blocks, send later, and snooze
  • One workspace — integrated calendar, contact timeline, thread notes, automation rules
  • Keyboard-first — global command palette (Ctrl K) and full keyboard navigation
  • Multi-account — unified inbox, each account with its own identity and color
  • Multilingual — English and Polish interface

Preview

Thread view Composer Calendar

Architecture

Isolated Electron processes connected by a secure IPC boundary.

Renderer  (React · Fluent UI · Tailwind · Zustand)
    │
  secure IPC
    │
Main process  (Mail · SMTP · Sync · Calendar · Scheduler)
    │
 ┌──┴───────┐
 SQLCipher   OS Keychain

Full breakdown in ARCHITECTURE.md.

Tech stack

DesktopElectron 33
LanguageTypeScript 5
UIReact 18 · Fluent UI · Tailwind CSS
MailIMAPFlow · Nodemailer · MailParser
StorageSQLite + SQLCipher · FTS5
EditorTiptap
StateZustand
CredentialsKeytar · Electron safeStorage
TestingVitest · Playwright

Installation

Requirements: Node.js 24+, Git, C/C++ build tools (plus libsecret dev headers on Linux)

git clone https://github.com/qvbvs/auramail.git
cd auramail
npm install
npm run setup   # rebuilds native modules for Electron's ABI
npm run dev

On Wayland: npm run dev -- --ozone-platform-hint=auto

Linux dependencies
# Debian / Ubuntu / Mint / Pop!_OS
sudo apt install build-essential libsecret-1-dev python3

# Fedora / RHEL
sudo dnf install make gcc-c++ libsecret-devel python3

# Arch / Manjaro
sudo pacman -S base-devel libsecret python

Tested on GNOME, KDE Plasma, XFCE and Cinnamon, under both X11 and Wayland.

Security

  • Mail data is stored in a local SQLCipher-encrypted SQLite database (AES-256)
  • The encryption key is protected per-install via Electron's safeStorage (Windows DPAPI / Linux Secret Service)
  • Account credentials live in the OS credential manager via keytar — never in the app database
  • Hardened Electron: contextIsolation, sandbox, no nodeIntegration; external links open in the system browser

Found a vulnerability? See SECURITY.md.

Keyboard shortcuts

ShortcutAction
Ctrl KCommand palette
CNew message
Ctrl EnterSend
EArchive
SStar / unstar
DeleteMove to trash
EscClose active view

Build

npm run typecheck   # type checking
npm test            # tests
npm run lint        # lint

npm run build:win     # Windows
npm run build:linux   # Linux
npm run build:all     # all platforms

Artifacts land in dist/ — .exe/NSIS on Windows, .AppImage/.deb/.rpm on Linux.

Roadmap

  • Advanced automation rules
  • Additional calendar integrations
  • Improved contact management
  • More customization options
  • Extended keyboard workflows

Contributing

Contributions and bug reports are welcome — please read CONTRIBUTING.md before opening a PR.


MIT © 2026 qvbvs · GitHub · Releases

qvbvs/AuraMail

TypeScript

2

11 commits

updated Oct 1, 2026

See the code

See what people are saying

SourceMessageScoreDate

GitHub - qvbvs/AuraMail (r/SideProject)

Hi! I recently started building a project born out of pure frustration with modern email: **AuraMail**. I wanted to share why I decided to take this on, how it works, and get some early feedback from this community. # 😤 The Frustration: Where did email clients go wrong? Email is one of the few…

1

Oct 1, 2026

README

AuraMail

A private, local-first email client for the desktop.

Release Platform License


AuraMail


About

AuraMail is a native email client for Windows and Linux, built around privacy, performance, and productivity. Your mail lives locally — encrypted, searchable offline, and free of any unnecessary cloud layer.

Built with Electron, React, TypeScript, and SQLCipher.

Features

  • Encrypted by default — SQLCipher (AES‑256) database, credentials stored via the OS keychain (DPAPI / Secret Service / KWallet)
  • Real-time sync — IMAP IDLE push, automatic reconnect, sleep/wake recovery
  • Offline search — full-text search across your mailbox via SQLite FTS5
  • Rich composer — Tiptap editor with checklists, code blocks, send later, and snooze
  • One workspace — integrated calendar, contact timeline, thread notes, automation rules
  • Keyboard-first — global command palette (Ctrl K) and full keyboard navigation
  • Multi-account — unified inbox, each account with its own identity and color
  • Multilingual — English and Polish interface

Preview

Thread view Composer Calendar

Architecture

Isolated Electron processes connected by a secure IPC boundary.

Renderer  (React · Fluent UI · Tailwind · Zustand)
    │
  secure IPC
    │
Main process  (Mail · SMTP · Sync · Calendar · Scheduler)
    │
 ┌──┴───────┐
 SQLCipher   OS Keychain

Full breakdown in ARCHITECTURE.md.

Tech stack

DesktopElectron 33
LanguageTypeScript 5
UIReact 18 · Fluent UI · Tailwind CSS
MailIMAPFlow · Nodemailer · MailParser
StorageSQLite + SQLCipher · FTS5
EditorTiptap
StateZustand
CredentialsKeytar · Electron safeStorage
TestingVitest · Playwright

Installation

Requirements: Node.js 24+, Git, C/C++ build tools (plus libsecret dev headers on Linux)

git clone https://github.com/qvbvs/auramail.git
cd auramail
npm install
npm run setup   # rebuilds native modules for Electron's ABI
npm run dev

On Wayland: npm run dev -- --ozone-platform-hint=auto

Linux dependencies
# Debian / Ubuntu / Mint / Pop!_OS
sudo apt install build-essential libsecret-1-dev python3

# Fedora / RHEL
sudo dnf install make gcc-c++ libsecret-devel python3

# Arch / Manjaro
sudo pacman -S base-devel libsecret python

Tested on GNOME, KDE Plasma, XFCE and Cinnamon, under both X11 and Wayland.

Security

  • Mail data is stored in a local SQLCipher-encrypted SQLite database (AES-256)
  • The encryption key is protected per-install via Electron's safeStorage (Windows DPAPI / Linux Secret Service)
  • Account credentials live in the OS credential manager via keytar — never in the app database
  • Hardened Electron: contextIsolation, sandbox, no nodeIntegration; external links open in the system browser

Found a vulnerability? See SECURITY.md.

Keyboard shortcuts

ShortcutAction
Ctrl KCommand palette
CNew message
Ctrl EnterSend
EArchive
SStar / unstar
DeleteMove to trash
EscClose active view

Build

npm run typecheck   # type checking
npm test            # tests
npm run lint        # lint

npm run build:win     # Windows
npm run build:linux   # Linux
npm run build:all     # all platforms

Artifacts land in dist/ — .exe/NSIS on Windows, .AppImage/.deb/.rpm on Linux.

Roadmap

  • Advanced automation rules
  • Additional calendar integrations
  • Improved contact management
  • More customization options
  • Extended keyboard workflows

Contributing

Contributions and bug reports are welcome — please read CONTRIBUTING.md before opening a PR.


MIT © 2026 qvbvs · GitHub · Releases

Languages

TypeScript

91.4%

JavaScript

5.3%

CSS

3.2%