Skip to content

macro-inc/macro

Repository files navigation

Frame 1597878967

Extremely fast email, messaging, tasks and docs @linked together in one system.

Features

email Email
Full email client with keyboard-driven triage, instant search, and Gmail sync.
channel Channels & Groups
Team messaging with bi-directional @links. Mention a doc or task to create a reference you can trace back.
docs Docs & Notes
Real-time collaborative documents using CRDT. @link to any message, task, or file in the system.
canvas Canvas
2D diagramming with embedded @links to tasks, files, and emails. Embeds update automatically.
editor Unified Editor
Same rich text editor across emails, notes, channels, and tasks. One surface, everywhere.
ai AI Chat
Query your emails, messages, docs, and the web. @mention anything for context. Agent mode for autonomous search.
search Unified Search
Search and query everything: type:email inbox:true, type:task due:[1 week], type:file "contract"
folder File Storage
Store and share videos, images, and documents. Auto-imports attachments from emails and channels.
pdf PDF Viewer
Intelligent parsing with text extraction. Full-text search over PDF contents.
keyboard Keyboard First
Every action has a hotkey. Navigate, triage, search, and execute from anywhere without touching the mouse.
permissions Intuitive Permissions
Permissions inherit from channels. Send a document to someone and they can access it.

Directory Structure

While we're not accepting contributions yet, we encourage you to explore the codebase. This overview should help you navigate.

macro/
├── js/app/                      # Frontend (SolidJS + Tauri)
│   ├── packages/
│   │   ├── app/                 # Web/Desktop app entry point
│   │   ├── core/                # Core shared logic and components
│   │   ├── lexical-core/        # Core text editor (Lexical-based)
│   │   ├── block-*/             # UI block components (email, chat, canvas, etc.)
│   │   └── service-*/           # API clients for backend services
│   └── src-tauri/               # Tauri Rust backend for desktop
│
├── rust/cloud-storage/          # Backend services (Rust)
│   ├── document-storage-service/    # Document storage API
│   ├── email_service/               # Email processing
│   ├── comms_service/               # Messaging
│   ├── search_service/              # Full-text search
│   ├── authentication_service/      # Auth
│   ├── connection_gateway/          # WebSocket gateway
│   ├── macro_db_client/             # PostgreSQL client
│   └── ...                          # Other services and shared crates
│
├── infra/                       # Infrastructure (Pulumi + AWS)
│   ├── stacks/                  # Pulumi deployment stacks
│   ├── lambda/                  # Lambda function configs
│   └── resources/               # Reusable AWS resource definitions
│
└── scripts/                     # Build and utility scripts

Feature Requests

For feature requests, please email contact@macro.com

Hiring

We're hiring! If you're interested in working on macro, please email teo@macro.com

License

All rights reserved. The contents of this repository are provided for viewing purposes only. You may not use, copy, modify, distribute, or create derivative works from this code without explicit written permission from Macro.

PROJECT DIRECTION

We intend to open-source most of the codebase under a copy-left license in the future, with a separate Enterprise Edition (EE) component. We’re actively exploring the best way to do this while preserving a high-quality commercial product and a sustainable ecosystem.

CONTRIBUTIONS

We’re not accepting external contributions yet. Feel free to explore the code and follow progress, but please do not submit PRs or attempt to reuse the code at this time.

See LICENSE for details.

About

Extremely fast email, messaging, tasks and docs linked together in one system.

Resources

License

Stars

Watchers

Forks

Packages

No packages published