Every repository that matters
The honest map of the Pimalaya organisation: what you can install today, what is brewing, and what has been retired. Statuses are curated by hand; when in doubt, the repository's README is the truth.
- 24libraries listed
- 15apps
- 9community projects
- 8frozen or retired
Where the work goes next
Mail, contacts and calendars are all covered now: Himalaya, Cardamum and Calendula each speak several backends, and Neverest syncs all three domains into one local store. The 2026 to 2027 direction, funded by the NGI Zero Commons Fund, is set out on the blog.
The focus is pimdir, the standard for personal information on disk. The Android app is its first full implementation, read and write, which is where the draft gets stress-tested before it stops moving.
Around it, the libraries consolidate (stable APIs, documentation, coverage), interfaces become views over the local store, and tasks are the next domain. With Red Arrow, our first partner, we are also building an AI-powered desktop client for mail, contacts and calendars.
- Standardise pimdirthe draft, stressed by Android
- Consolidatestable libraries, documented
- InterfacesAndroid, then desktop
- More domainstasks next
The foundation 24
Every app is a thin frontend over these Rust crates. A curated selection, as the organisation holds more (per-store coroutines, toolkit crates, experiments). The io- prefix marks I/O-free, sans-I/O coroutine libraries: you bring the sockets, they bring the protocol.
| Name | Domain | Kind | Status | What it does |
|---|---|---|---|---|
| ical-rs | Calendar | Library | early | iCalendar parser, validator, editor, merger and builder, with a byte-faithful round-trip. |
| io-gcal | Calendar | Library | early | I/O-free Google Calendar REST API client. |
| io-gmail | Library | early | I/O-free Gmail REST API client. | |
| io-gpeople | Contacts | Library | early | I/O-free Google People REST API client. Formerly io-people. |
| io-http | Transport | Library | stable | I/O-free HTTP client core the other crates build on. |
| io-imap | Library | stable | I/O-free IMAP client. | |
| io-jmap | Library | early | I/O-free JMAP client. | |
| io-m2dir | Library | early | I/O-free m2dir store. | |
| io-maildir | Library | early | I/O-free Maildir store. | |
| io-managesieve | Library | early | I/O-free ManageSieve client, to manage server-side mail filters. | |
| io-mbox | Library | early | I/O-free mbox reader and writer, every variant, in bounded memory. | |
| io-msgraph | Mail + Contacts + Calendar | Library | early | I/O-free Microsoft Graph client (mail, contacts and calendars). |
| io-oauth | Auth | Library | stable | I/O-free OAuth 2.0 flows: authorization code, device, dynamic registration. |
| io-pim-discovery | Plumbing | Library + CLI | early | Discover a provider’s IMAP, SMTP, JMAP, CardDAV and CalDAV services from an email address. The CLI ships as an off-by-default cargo feature. |
| io-pimdir | Storage | Library + CLI | early | The reference pimdir implementation, store and sync engine: one local store for mail, contacts and calendars. The pimdir operator CLI ships as an off-by-default cargo feature. |
| io-proxy | Transport | Library | early | I/O-free SOCKS5 and HTTP CONNECT proxy tunnels. |
| io-sasl | Auth | Library | early | I/O-free SASL client mechanisms. |
| io-smtp | Library | stable | I/O-free SMTP client. | |
| io-vdir | Contacts + Calendar | Library | early | I/O-free vdir store for vCard and iCalendar collections. |
| io-webdav | Contacts + Calendar | Library | early | I/O-free CardDAV and CalDAV clients over WebDAV. |
| mml | Library + CLI | stable | Compose MIME messages as human-editable markup (MML), Emacs-style. | |
| pimdir | Storage | Specification | early | The pimdir standard: one portable SQLite-plus-blobs store for mail, contacts and calendars, with its sync and search layers. Draft. |
| stream | Transport | Library | stable | Standard I/O connectors that drive the I/O-free crates. |
| vcard-rs | Contacts | Library | early | vCard parser, validator, editor, merger and builder, with a byte-faithful round-trip. |
End-user tools 15
Anything marked in development has no release yet and is not advertised on the home page.
| Name | Domain | Kind | Status | What it does |
|---|---|---|---|---|
| calendula | Calendar | CLI | early | Manage calendars over CalDAV, Google Calendar, vdir and pimdir. |
| cardamum | Contacts | CLI | early | Manage contacts over CardDAV, JMAP, Google, Microsoft and vdir address books. |
| carillon | Plumbing | CLI | early | Watch mail, contact and calendar collections for changes. Formerly mirador. |
| comodoro | Time | CLI | stable | Manage Pomodoro-style timers from the command line. |
| himalaya | CLI | stable | Manage mail from the command line, over IMAP, SMTP, JMAP, Gmail, Microsoft, Maildir, m2dir and mbox. | |
| himalaya-tui | TUI | in development | A full-screen terminal UI for reading and writing mail. | |
| himalaya-vim | Vim plugin | stable | Manage mail from Vim, on top of the Himalaya CLI. | |
| m2m | CLI | in development | Convert mail stores between Maildir, Maildir++ and m2dir. | |
| neverest | Mail + Contacts + Calendar | CLI | beta | Synchronize mail, contacts and calendars into a local pimdir store, from IMAP, CardDAV, CalDAV, Google and Microsoft. |
| ortie | Plumbing | CLI | stable | Manage OAuth 2.0 tokens for your accounts, with a provider wizard. |
| pimalaya-android | Mail + Contacts + Calendar | Android app | in development | Mail, contacts and calendars in one offline-first Android app, over Google, Microsoft, JMAP and any IMAP, CardDAV and CalDAV server. In closed alpha. |
| pimalaya-linux | Mail + Contacts | Desktop app | in development | A native GTK4 and libAdwaita desktop app for mail and contacts, sharing its configuration file with the command-line tools. |
| sirup | Plumbing | CLI | early | Spawn pre-authenticated IMAP and SMTP sessions, exposed over Unix sockets. |
| tcal | Calendar | CLI | early | Edit iCalendar events as friendly TOML. |
| tcard | Contacts | CLI | early | Edit vCards as friendly TOML. |
Built by others 9
Front-ends and integrations built by other people on top of the tools and the crates, none of them maintained by the organisation. The list is curated by hand and certainly incomplete: if you built something, open a pull request on the websites repository and it lands here.
| Name | Author | Kind | What it does |
|---|---|---|---|
| himalaya-emacs | dantecatalfamo | Emacs plugin | Browse, read, write and organize mail from Emacs, on top of the Himalaya CLI. Published on MELPA. |
| mailbrus | antono | Desktop and web app | A keyboard-driven, plain-text-first mail client built on the io-email and io-maildir crates, shipped as a Tauri app and a progressive web app. |
| himalaya.nvim | knownasnaffy | Neovim plugin | A native Neovim interface to the Himalaya CLI, written in Lua on top of nui.nvim. |
| himalaya.nvim | JostBrand | Neovim plugin | A Neovim port of himalaya-vim, with folder pickers backed by fzf or Telescope. |
| himalaya-nvim | xav-ie | Neovim plugin | A heavily modified Lua fork of himalaya-vim, with threaded views, structured search, HTML rendering and flag management. |
| himalaya-wrap | robertmeta | Emacs plugin | An Emacs front-end to the Himalaya CLI designed for Emacspeak users, working straight against the remote server with no local maildir. |
| himalaya | jns | Raycast extension | Read and manage the mail of your default account from the Raycast launcher on macOS. |
| dfzf | parisni | Sway and i3 toolkit | A fuzzy-finder desktop toolkit whose dfzf-mail viewer runs on the Himalaya CLI and mml. |
| himalaya SKILL | openclaw | Agent skill | Teaches the OpenClaw coding agent to manage mail through the Himalaya CLI. |
Kept for history 8
Public for existing users, but receiving no new features. Frozen aggregators are superseded by protocol-direct clients; deprecated crates should not be depended on.
| Name | Domain | Kind | Status | What it does |
|---|---|---|---|---|
| io-addressbook | Contacts | Library | frozen | Multi-backend contacts aggregator; superseded by protocol-direct clients. |
| io-calendar | Calendar | Library | frozen | Multi-backend calendar aggregator; superseded by protocol-direct clients. |
| io-email | Library | frozen | Multi-backend mail aggregator; superseded by protocol-direct clients. | |
| io-fs | Storage | Library | deprecated | Shared filesystem coroutines; each store now defines its own. |
| io-keyring | System | Library | deprecated | Keyring coroutines; tools now document third-party keyring CLIs instead. |
| io-process | System | Library | deprecated | Process-spawning coroutines. |
| io-replica | Storage | Library | deprecated | Sync engine, now folded into io-pimdir. |
| mimosa | System | CLI | deprecated | Secret-management CLI, retired with io-keyring. |
One idea each, before the roadmap
Running on the side, each experiment validates one idea before it is allowed to shape the roadmap.
Carillon
Watching as a service: a server holds the IMAP connections, waits for changes, and turns them into notifications, so no client has to keep a connection (and a battery) alive. It validated the watch flow end to end against real providers; that flow is what the roadmap folds into the watch tooling. Its paid, hosted side is paused for now.
pimalaya-android
Validates that the I/O-free Rust libraries can power a real mobile app: the protocol logic runs in Rust, compiled for Android, while the platform side (TLS, storage, the system contacts) stays native. It started as a contacts app and became the whole thing, mail, contacts and calendars behind one store and one account list, which is the second point it validates: the three domains belong in one app, not three. All three domains now read and write, offline first, and the app is in closed alpha with a handful of chosen testers.
pimalaya-linux
The same idea in a third ecosystem: a native GTK4 and libAdwaita desktop app for mail and contacts, built on the very same Rust cores, to prove the libraries fit any UI (terminal, mobile or desktop) without rewriting the protocols. It reads the same configuration file as the command-line tools, so one account definition serves all of them. Only the application shell exists so far.