Skip to content

FEAT: Full-text search index across folders and accounts #1129

@andrinoff

Description

@andrinoff

Describe the feature

A first-class email client lets you find any message in seconds. Right now matcha can only filter what's loaded into the current folder view.

Ship a local full-text search index (SQLite FTS5 or Bleve) that:

  • ingests every fetched message body + headers
  • indexes per-account, per-folder
  • supports prefix, phrase, and field-qualified queries (from:alice subject:invoice)
  • updates incrementally on IDLE notifications
  • exposes a TUI search modal (/) and a matcha search CLI command

Why this matters

Search is table stakes for any mail client; Mutt, aerc, neomutt, Thunderbird all have it. Without it the user has to fall back to grepping raw IMAP downloads.

Notes

  • SQLite FTS5 is probably the cheapest path: zero deps, atomic writes, ~tens of MB for a heavy inbox.
  • Index should live in ~/.cache/matcha/search.db so it can be rebuilt without losing config.
  • Tokenizer needs to handle CJK / Cyrillic / accented Latin reasonably (FTS5 unicode61 tokenizer).

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions