Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mail TUI

A terminal-based email client for Office Exchange with vim-like navigation.

Features

Current progress:

  • Project setup and architecture
  • Configuration handling
  • Mock Exchange email fetching
  • TUI implementation with split view
  • Vim-like navigation
  • Help menu
  • Email refresh functionality
  • Status bar with notifications

End goal:

  • A terminal UI application that can:
    • Connect to Office Exchange
    • Fetch emails from the current quarter
    • Display emails in a split view (titles/dates on left, content/sender on right)
    • Navigate through emails using vim-like keybindings
    • Show a help menu with '?' key

Usage

# Run with default config
mail-tui

# Specify config file
mail-tui --config path/to/config.toml

Development

Prerequisites

Building

# Build the project
cargo build

# Build with optimizations
cargo build --release

Running with Hot Reload

Install cargo-watch if you don't have it already:

cargo install cargo-watch

Run with hot reload during development:

cargo watch -x run

This will automatically rebuild and restart the application whenever you save changes to any source file.

Testing

# Run tests
cargo test

# Run tests with hot reload
cargo watch -x test

Configuration

Create a config.toml file:

[exchange]
email = "your.email@company.com"
password = "your_password"
server = "outlook.office365.com"

Keyboard Shortcuts

  • j/k or ↑/↓: Navigate up/down through email list
  • l or → or Enter: View selected email details
  • h or ← or Esc: Return to email list
  • g: Go to first email
  • G: Go to last email
  • r: Refresh emails
  • /: Search emails
  • q: Quit application
  • ?: Show help menu

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages