Mutt clone for Office 365 written in Rust
Find a file
Isaac Gelado 252a6ec5d0 Merge branch 'igelado/sidebar' into 'main'
Sidebar, as in mutt

See merge request igelado/mett!31
2026-10-16 10:12:20 -07:00
crates Sidebar: tests find the requests to answer by what they ask 2026-10-16 10:00:37 -07:00
docs Docs: the sidebar 2026-10-16 09:54:45 -07:00
.coderabbit.yaml Add CodeRabbit configuration 2026-10-14 09:43:52 -07:00
.gitignore Compose: learn the user's own addresses from the mailbox; ignore editor temp files 2026-10-14 22:32:22 -07:00
.gitlab-ci.yml Add Cargo workspace and mett-core domain model and ports 2026-10-14 10:10:07 -07:00
AGENTS.md Address CodeRabbit review of MR !3; start next MR while waiting 2026-10-14 12:53:05 -07:00
Cargo.lock Worker: paths resolved a level at a time; moves, purges and checks a few at once 2026-10-15 18:46:33 -07:00
Cargo.toml Attachments: a kept server draft is reused whatever the size; the request is measured as sent; text is shown in its charset 2026-10-15 13:18:26 -07:00
README.md Sign in from a window inside the TUI 2026-10-14 17:19:18 -07:00
SKILLS.md Initial commit: README, SKILLS and AGENTS 2026-10-14 08:45:45 -07:00

mett

A clone of the MUTT e-mail client for accessing Office365 services.

Goal

MUTT is a small, fast, text-based e-mail client for Unix-like systems. mett aims to bring the same keyboard-driven, terminal-first experience to Microsoft Office365, so that mail (and related services) hosted on Office365 can be read, searched, composed and managed from the terminal.

Status

Early stage. mett can sign in to an Office365 account and browse a folder, mutt-style: a message index and a pager. Composing, replying and folder management are still to come.

Quick start

  1. Register an app for mett in Microsoft Entra ID; see crates/mett-msgraph/README.md.

  2. Create ~/.config/mett/mettrc:

    set my_me = you@example.com
    set from = $my_me realname = "Your Name"
    set folder = msgraph://$my_me/
    set spoolfile = =@inbox
    set msgraph_client_id = <your app's client ID>
    
  3. Run mett. The first time, it opens your browser to sign in and shows the sign-in link in a window, in case the browser doesn't open (use set msgraph_auth_flow = device-code over SSH, and mett shows a code to enter instead):

    cargo run -p mett-tui
    

cargo run -p mett-tui -- --demo shows the interface on a sample mailbox without an account.

Documentation