A new open-source email archiving tool written in Rust offers lightweight, high-performance indexing with multi-account support and full-text search capabilities.

Developers seeking efficient email archiving solutions now have a new Rust-based option: Bichon, an open-source tool designed specifically for long-term email management without the overhead of traditional email clients. Created by the developer behind rustmailer, Bichon addresses the gap between middleware APIs and archival needs with a standalone architecture that prioritizes search and storage efficiency.
Unlike conventional email clients focused on message composition and real-time communication, Bichon operates as a server-side application that continuously synchronizes with IMAP servers. Its architecture combines Rust's performance advantages with deliberate design choices:
- Unified storage and search using Tantivy as both storage engine and full-text indexer
- Lightweight operation with zero external database dependencies
- Transparent compression reducing storage needs by ~80% in real-world deployments
- OAuth2 support alongside password authentication

Core Differentiators
Bichon explicitly avoids email sending capabilities, instead focusing on:
| Capability | Email Clients | Bichon |
|---|---|---|
| Primary Purpose | Send/receive | Archive/search |
| Multi-account | Limited | Unified index |
| API Access | Rare | REST + OpenAPI |
| Storage Model | Cache-based | Local archive |
Real-World Validation
Early adopters report significant efficiency gains. One deployment handling 126 email accounts with 229GB of original data (460,000 emails) achieved:
- Compression to 41GB (82% reduction)
- Unified search across all accounts
- Dashboard analytics for email volume trends

Technical Implementation
Bichon's architecture leverages:
- Backend: Rust with Poem framework
- Frontend: React + TypeScript via Vite
- Metadata: Native_DB for lightweight configurations
- Security: Mandatory access tokens and RBAC since v0.2.0
Deployment options include Docker (recommended) or platform-specific binaries. The project emphasizes straightforward setup, though CORS configuration requires precise origin definitions in production environments.
Origin Story
The developer created Bichon after users requested archiving features for rustmailer, an email API middleware. Recognizing that archiving required different architectural priorities, Bichon was built in under a month as a purpose-built solution. "Email archiving only requires a small portion of rustmailer's functionality plus a search engine," the developer noted, highlighting how specialization enabled rapid development.

Current Capabilities
- Import tools: CLI for EML/MBOX files
- Multi-user support: Role-based access control
- Live synchronization: Date-range or mailbox-specific fetching
- 18-language WebUI with email threading display
Future roadmap items include PST import support, manual sync controls, and server-side cleanup options. The project welcomes contributions under AGPLv3 licensing.
Bichon's GitHub repository provides detailed documentation, while the Docker image offers quick deployment. For organizations needing to maintain email archives without proprietary solutions, Bichon presents a compelling open-source alternative focused on long-term accessibility over real-time communication.


Comments
Please log in or register to join the discussion