{"name":"Himalaya: A Powerful CLI Tool for Email Management in Your Terminal","description":"Himalaya is a robust command-line interface (CLI) tool designed for managing emails directly from your terminal. Built with Rust, it offers multi-accounting, PGP encryption, OAuth 2.0 support, and various backend integrations like IMAP, SMTP, Maildir, and Notmuch, providing a flexible and efficient way to handle your correspondence. This tool distinguishes itself by offering a stateless, command-line approach, ideal for scripting and integration into existing workflows.","github":"https://github.com/pimalaya/himalaya","url":"https://osrepos.com/repo/pimalaya-himalaya","source":"osrepos.com","sourceDescription":"This repository profile is provided by osrepos.com, an open source repository discovery platform.","repositoryProfile":"https://osrepos.com/repo/pimalaya-himalaya","generatedFor":"open source discovery and AI-assisted research","markdown":"https://osrepos.com/repo/pimalaya-himalaya.md","json":"https://osrepos.com/repo/pimalaya-himalaya.json","topics":["cli","email","rust","imap","smtp","pgp","terminal","email client"],"keywords":["cli","email","rust","imap","smtp","pgp","terminal","email client"],"stars":null,"summary":"Himalaya is a robust command-line interface (CLI) tool designed for managing emails directly from your terminal. Built with Rust, it offers multi-accounting, PGP encryption, OAuth 2.0 support, and various backend integrations like IMAP, SMTP, Maildir, and Notmuch, providing a flexible and efficient way to handle your correspondence. This tool distinguishes itself by offering a stateless, command-line approach, ideal for scripting and integration into existing workflows.","content":"## Introduction\n\nHimalaya is a powerful, Rust-based command-line interface (CLI) tool designed for efficient email management directly from your terminal. Unlike traditional Terminal User Interfaces (TUIs) that lock your terminal into an event loop, Himalaya operates in a stateless manner, allowing you to interact with your emails using standard shell commands. It supports multi-accounting, various backends including IMAP, Maildir, Notmuch, SMTP, and Sendmail, and advanced features like PGP encryption and OAuth 2.0 authorization. Himalaya is built on `email-lib`, part of the broader Pimalaya project, aiming to provide robust Rust tools for email handling.\n\n## Installation\n\nHimalaya offers several convenient installation methods:\n\n*   **Pre-built Binary**:\n    bash\n    curl -sSL https://raw.githubusercontent.com/pimalaya/himalaya/master/install.sh | sudo sh\n    # Or for a regular user:\n    curl -sSL https://raw.githubusercontent.com/pimalaya/himalaya/master/install.sh | PREFIX=~/.local sh\n    \n*   **Cargo**:\n    bash\n    cargo install himalaya\n    # With specific features, e.g., only IMAP:\n    cargo install himalaya --no-default-features --features imap\n    \n*   **Arch Linux**:\n    bash\n    pacman -S himalaya\n    # Or via AUR with yay:\n    yay -S himalaya-git\n    \n*   **Homebrew**:\n    bash\n    brew install himalaya\n    \n*   **Scoop**:\n    bash\n    scoop install himalaya\n    \n*   **Fedora Linux/CentOS/RHEL**:\n    bash\n    dnf copr enable atim/himalaya\n    dnf install himalaya\n    \n*   **Nix**:\n    bash\n    nix-env -i himalaya\n    \n*   **From Sources**:\n    bash\n    git clone https://github.com/pimalaya/himalaya.git\n    cd himalaya\n    cargo build --release\n    \n    *(Binaries will be in `target/release`)*\n\n## Examples\n\nInteracting with Himalaya is straightforward using its command-line syntax.\n\n**Listing Emails**:\nTo list envelopes from a specific account and folder:\nbash\nhimalaya envelope list --account posteo --folder Archives.FOSS --page 2\n\n\n**Composing Messages**:\nHimalaya allows message composition using your `$EDITOR`. Messages are structured with headers (e.g., `From`, `To`, `Subject`) and a body, separated by an empty line. It supports plain text or the MIME Meta Language (MML) for rich content, including attachments.\n\nExample of a plain text message:\neml\nFrom: alice@localhost\nTo: Bob <bob@localhost>\nSubject: Hello from Himalaya\n\nHello, world!\n\n\nExample of a message with an attachment using MML:\neml\nFrom: alice@localhost\nTo: bob@localhost\nSubject: How to attach stuff\n\nRegular binary attachment:\n<#part filename=/path/to/file.pdf><#/part>\n\nFor more detailed examples, refer to the [MML documentation](https://github.com/pimalaya/core/tree/master/mml/examples).\n\n## Why Use Himalaya\n\nHimalaya stands out as an email client for several reasons:\n\n*   **CLI-First Approach**: Its stateless command-line nature makes it highly scriptable and easily integratable into existing workflows, offering a distinct advantage over traditional TUI clients.\n*   **Flexibility and Configuration**: Supports multi-accounting with interactive wizard setup or manual TOML-based configuration. It provides extensive options for managing various email services, including detailed guides for Proton Mail, Gmail, Outlook, and iCloud Mail.\n*   **Comprehensive Backend Support**: Integrates seamlessly with IMAP, Maildir, Notmuch, SMTP, and Sendmail, ensuring compatibility with a wide range of email systems.\n*   **Security Features**: Offers robust PGP encryption options (via shell commands, GPG bindings, or native implementation) and secure OAuth 2.0 authorization flows for services like Gmail and Outlook. It also supports global system keyring for secret management.\n*   **Rust-Powered Performance**: Being written in Rust, Himalaya benefits from its performance, memory safety, and reliability.\n*   **Extensible Ecosystem**: Serves as a foundation for other interfaces, with existing plugins for Vim, Emacs, and Raycast, demonstrating its adaptability.\n\n## Links\n\n*   **GitHub Repository**: [https://github.com/pimalaya/himalaya](https://github.com/pimalaya/himalaya){target=\"_blank\"}\n*   **Pimalaya Core MML Examples**: [https://github.com/pimalaya/core/tree/master/mml/examples](https://github.com/pimalaya/core/tree/master/mml/examples){target=\"_blank\"}\n*   **Vim Plugin**: [https://github.com/pimalaya/himalaya-vim](https://github.com/pimalaya/himalaya-vim){target=\"_blank\"}\n*   **Emacs Plugin**: [https://github.com/dantecatalfamo/himalaya-emacs](https://github.com/dantecatalfamo/himalaya-emacs){target=\"_blank\"}\n*   **Raycast Extension**: [https://www.raycast.com/jns/himalaya](https://www.raycast.com/jns/himalaya){target=\"_blank\"}\n*   **REPL Variant**: [https://github.com/pimalaya/himalaya-repl](https://github.com/pimalaya/himalaya-repl){target=\"_blank\"}","metrics":{"detailViews":16,"githubClicks":4},"dates":{"published":null,"modified":"2025-10-12T03:00:40.000Z"}}