An open API service indexing awesome lists of open source software.

https://github.com/rhinoc/mailia

Native macOS email companion that turns multiple mailboxes into a people-first inbox.
https://github.com/rhinoc/mailia

desktop-app email himalaya macos sparkle swift swiftui

Last synced: 26 days ago
JSON representation

Native macOS email companion that turns multiple mailboxes into a people-first inbox.

Awesome Lists containing this project

README

          




Mailia app icon

Mailia


All your mailboxes, organized around people instead of folders.


Mailia is a lightweight, timeline-style email home for macOS. It helps you follow conversations across accounts without living inside a traditional inbox.



Releases
 · 
License
 · 
Credits
 · 
Contributing
 · 
Updates




Mailia is a native macOS mail app for people who use multiple accounts but want
one clear place to read, review, and reply. It groups mail by people,
organizations, newsletters, and services, then shows each sender's history as a
durable conversation timeline.

Mailia uses your existing Himalaya-compatible account configuration for mail
access. The release app includes its own `mailia-mail` app-server, so normal
account discovery, sync, message reading, sending, and attachment downloads do
not depend on shelling out to the Himalaya CLI.

## Screenshots


Mailia main timeline with a people-first inbox and message history
Mailia account and sender detail view for a selected conversation

## Features

- 👥 **People and organizations first** — Start from who sent the mail, not which
folder or account it landed in.
- 🧵 **One cross-account timeline** — See incoming and outgoing history together
with account labels, folders, dates, and attachments kept in context.
- 🧹 **Review what needs attention** — Move sender history between Main, Junk,
Trash, and Flagged without losing the surrounding conversation.
- 🔒 **Local, safer mail reading** — Keep credentials in Himalaya, store Mailia
data locally, and read sanitized HTML with remote images blocked by default.

## How Mailia Reads Mail

Mailia separates account configuration from the app experience:

- Account credentials, OAuth tokens, and provider settings stay in your local
Himalaya-compatible configuration and credential storage.
- Mailia starts its bundled `mailia-mail` app-server to talk to IMAP, SMTP, and
Maildir accounts through that configuration.
- Mailia stores its own database locally for synced metadata, sender grouping,
timeline state, and review status.

This keeps provider secrets outside Mailia while still giving the app a native,
low-latency mail engine.

## Requirements

- **macOS** 26.0 or newer.
- A configured [Himalaya](https://github.com/pimalaya/himalaya)-compatible mail
setup for account access.

Mailia does not manage provider OAuth, app passwords, or IMAP/SMTP credentials.
Those credentials remain in the user's Himalaya configuration.

## Install

Mailia ships as a macOS disk image. Download the latest
**`Mailia--macos.dmg`** from
**[GitHub Releases](https://github.com/rhinoc/mailia/releases)**.

1. Open the DMG.
2. Drag **Mailia.app** to **Applications**.
3. Launch **Mailia** from Applications or Spotlight.

### First Launch and Gatekeeper

Browser downloads are tagged with Gatekeeper quarantine. If macOS warns that
the app cannot be opened or is from an unidentified developer, use
**Control-click → Open** once and confirm in the dialog.

You can also remove quarantine from the installed app:

```bash
xattr -dr com.apple.quarantine /Applications/Mailia.app
```

## Account Setup

Mailia uses the same account configuration and credential storage as
[Himalaya](https://github.com/pimalaya/himalaya). Runtime mail operations go
through Mailia's bundled `mailia-mail` app-server; Mailia does not shell out to
the Himalaya CLI for normal account discovery, sync, message reading, sending,
or attachment downloads.

To create or update account configuration, start with the official Himalaya
project:

- [Himalaya on GitHub](https://github.com/pimalaya/himalaya)
- [Pimalaya project](https://github.com/pimalaya)

After the shared configuration is in place, Mailia discovers accounts directly
from the same configuration files.

Mailia looks for Himalaya configuration in this order:

1. Paths listed in `HIMALAYA_CONFIG`, separated with `:`.
2. `~/Library/Application Support/himalaya/config.toml`.
3. `$XDG_CONFIG_HOME/himalaya/config.toml`.
4. `~/.config/himalaya/config.toml`.

## Local Data and Privacy

Mailia is a local macOS app. It stores app-managed state and synced mail
metadata locally, while credentials stay with Himalaya.

| Data | Location or owner |
| --- | --- |
| Provider credentials and OAuth tokens | Himalaya configuration and credential storage |
| Mailia database | `~/Library/Application Support/Mailia/mailia.sqlite` |
| Mailia preferences | macOS user defaults for `dev.rhinoc.mailia` |
| Attachment downloads | Downloads, or the directory selected in Mailia settings |

HTML email is treated as untrusted content. Mailia sanitizes message display,
filters unsafe links and styles, and blocks remote images by default while
preserving message layout. Local images exported with a message may be inlined
for display, but remote image URLs stay blocked unless the user enables remote
images.

## Contributing

For source builds, development setup, tests, release scripts, and contribution
boundaries, read [CONTRIBUTING.md](./CONTRIBUTING.md). For module boundaries,
read [ARCHITECTURE.md](./ARCHITECTURE.md).

## Third-Party Notices

Original project source code is licensed under the Mozilla Public License 2.0.
See [LICENSE](./LICENSE).

Third-party dependencies and generated data keep their own licenses and terms.
See [CREDITS.md](./CREDITS.md).

Mailia uses [Sparkle](https://sparkle-project.org/) for native macOS updates.
Release signing and appcast setup are documented in [SPARKLE.md](./SPARKLE.md).