Skip to content

jonasgunklach/UnMail

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

UnMail

A macOS mail client concept that reimagines email as conversations — not a pile of messages.

The Idea

Most email apps are organized around messages. UnMail organizes around people and threads. Every inbox item is a conversation with a participant (a person, company, newsletter, or system), making your email feel less like a chaotic queue and more like a chat history.

AI assistance is built into the concept to help you draft, summarize, and manage those conversations.

Features

  • Conversation-first layout — Three-column NavigationSplitView: Sidebar → Conversation List → Conversation Detail
  • Participant categories — Automatically bucket contacts into People, Companies, Newsletters, and Systems
  • Smart Subjects — Hides redundant "Re:" subject lines; only surfaces them when the topic actually changes
  • Pinned Attachments — Surfaces all attachments from a thread at the top so you never hunt for a file
  • List & Card views — Switch between compact list and a card grid in the conversation panel
  • Compose with References — Link related messages when composing so context travels with your reply
  • Search — Full-text search across conversation names, subjects, and message snippets

Tech Stack

Layer Technology
UI SwiftUI
Persistence SwiftData
Platform macOS 14+
Language Swift 5.9+

Project Structure

UnMail/
├── UnMailApp.swift          # App entry point, SwiftData container setup
├── ContentView.swift        # Root three-column NavigationSplitView
├── Models/
│   └── Models.swift         # Participant, Conversation, EmailMessage, Attachment, Draft, Reference
├── Views/
│   ├── SidebarView.swift    # Category sidebar (Inbox, People, Companies…)
│   ├── ConversationListView.swift  # Filtered conversation list with search
│   ├── ConversationDetailView.swift  # Full thread view
│   ├── MessageCellView.swift  # Individual message bubble/row
│   ├── ComposeView.swift    # Compose sheet with participant picker
│   ├── ReferencePickerView.swift  # Link related messages
│   └── AppSettings.swift   # User preferences (pinned attachments, smart subjects…)
├── Utilities/
│   └── Utilities.swift      # Date formatting, color helpers
└── Data/
    └── SampleData.swift     # Seeds demo data on first launch

Getting Started

  1. Clone the repo
  2. Open UnMail.xcodeproj in Xcode 15+
  3. Select the UnMail scheme and run on My Mac

No additional dependencies or configuration required — sample data is seeded automatically on first launch.

Status

This is a concept / work-in-progress. The core UI and data model are functional with sample data. IMAP/SMTP integration and AI features are not yet implemented.

License

MIT

About

AI Mail Concept that treats mail as natural conversations (MacOS only right now)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages