Skip to content
@pimalaya

Pimalaya

Pimalaya is an ambitious project that aims to improve open-source tools related to Personal Information Management.

Pimalaya

Pimalaya is an ambitious project that aims to improve open-source tools related to Personal Information Management (as known as PIM) which includes emails, contacts, calendars, tasks and more.

Pimalaya has two objectives:

  1. Provide I/O-free Rust libraries dedicated to the PIM domain. They serve as a basis for all sorts of top-level applications, which prevents developers to reinvent the wheel.
  2. Provide quality house-made applications built on top of these libraries, gathered into projects.
flowchart RL
    %% ── Interfaces (applications) ──
    Himalaya & HimalayaTui & Neverest & Mirador & MML & m2m & Sirup --> io-email
    Cardamum --> io-addressbook
    Calendula --> io-calendar
    Comodoro --> io-time
    Ortie --> io-oauth
    Tcard & Tcal --> calcard

    %% ── Domain libraries ──
    io-email --> io-imap & io-jmap & io-smtp & io-maildir & io-m2dir
    io-addressbook --> io-vdir & io-webdav
    io-calendar --> io-vdir & io-webdav

    %% ── Protocol, storage & transport libraries ──
    io-jmap & io-webdav & io-oauth --> io-http
    io-imap & io-smtp & io-http --> pimalaya-stream

    %% ── Labels ──
    HimalayaTui[Himalaya TUI]
    Tcard[tcard]
    Tcal[tcal]
    calcard["calcard (external)"]

    %% ── Interface styling ──
    style Himalaya stroke-width:4px
    style HimalayaTui stroke-width:4px
    style Neverest stroke-width:4px
    style Mirador stroke-width:4px
    style MML stroke-width:4px
    style m2m stroke-width:4px
    style Sirup stroke-width:4px
    style Cardamum stroke-width:4px
    style Calendula stroke-width:4px
    style Comodoro stroke-width:4px
    style Ortie stroke-width:4px
    style Tcard stroke-width:4px
    style Tcal stroke-width:4px

    %% ── Links: interfaces ──
    click Himalaya href "https://github.com/pimalaya/himalaya"
    click HimalayaTui href "https://github.com/pimalaya/himalaya-tui"
    click Neverest href "https://github.com/pimalaya/neverest"
    click Mirador href "https://github.com/pimalaya/mirador"
    click MML href "https://github.com/pimalaya/mml"
    click m2m href "https://github.com/pimalaya/m2m"
    click Sirup href "https://github.com/pimalaya/sirup"
    click Cardamum href "https://github.com/pimalaya/cardamum"
    click Calendula href "https://github.com/pimalaya/calendula"
    click Comodoro href "https://github.com/pimalaya/comodoro"
    click Ortie href "https://github.com/pimalaya/ortie"
    click Tcard href "https://github.com/pimalaya/tcard"
    click Tcal href "https://github.com/pimalaya/tcal"

    %% ── Links: libraries ──
    click io-email href "https://github.com/pimalaya/io-email"
    click io-addressbook href "https://github.com/pimalaya/io-addressbook"
    click io-calendar href "https://github.com/pimalaya/io-calendar"
    click io-imap href "https://github.com/pimalaya/io-imap"
    click io-jmap href "https://github.com/pimalaya/io-jmap"
    click io-smtp href "https://github.com/pimalaya/io-smtp"
    click io-maildir href "https://github.com/pimalaya/io-maildir"
    click io-m2dir href "https://github.com/pimalaya/io-m2dir"
    click io-vdir href "https://github.com/pimalaya/io-vdir"
    click io-webdav href "https://github.com/pimalaya/io-webdav"
    click io-http href "https://github.com/pimalaya/io-http"
    click io-oauth href "https://github.com/pimalaya/io-oauth"
    click io-time href "https://github.com/pimalaya/io-time"
    click pimalaya-stream href "https://github.com/pimalaya/stream"
Loading

Applications also share a small framework that is not shown above: pimalaya-cli, pimalaya-config and pimalaya-tui for argument parsing, configuration and terminal UI, plus pimconf for service discovery (autoconfig, DNS SRV, well-known URLs).

🧭 New contributor, human or AI? Read how Pimalaya works to understand the shared architecture and conventions, then read the CONTRIBUTING.md of the repository you want to work on.

📫 Email

⌛ Time

📇 Contact

📅 Calendar

🔒 Security

⚙️ Configuration

🧰 Libraries

All libraries are I/O-free (no_std coroutines with an optional std client). See how Pimalaya works for the shared design.

Social

Sponsoring

nlnet

Special thanks to the NLnet foundation and the European Commission that have been financially supporting the project for years:

If you appreciate the project, feel free to donate using one of the following providers:

GitHub Ko-fi Buy Me a Coffee Liberapay thanks.dev PayPal

Pinned Loading

  1. himalaya himalaya Public

    CLI to manage emails

    Rust 6.4k 201

  2. neverest neverest Public

    CLI to synchronize emails, written in Rust

    Rust 308 11

  3. comodoro comodoro Public

    CLI to manage timers

    Rust 67 6

  4. mirador mirador Public

    CLI to watch mailbox changes

    Rust 59 3

  5. cardamum cardamum Public

    CLI to manage contacts

    Rust 25 6

  6. ortie ortie Public

    CLI and lib to manage OAuth 2.0 tokens, written in Rust

    Rust 28 2

Repositories

Showing 10 of 49 repositories

Top languages

Loading…

Most used topics

Loading…