# Where to Find Documentation for Macro Inc. (Complete Guide for 2024)

> Find Macro Inc documentation easily. Explore the public docs site, GitHub repo, API references, READMEs, and service guides for Macro Inc.

- Repository: [Macro/macro](https://github.com/macro-inc/macro)
- Tags: getting-started
- Published: 2026-08-20

---

**Macro Inc. splits documentation across its public docs site at docs.macro.com and the macro-inc/macro GitHub repository, with additional API references, crate-level READMEs, and service-specific guides found throughout the codebase.**

The **macro-inc/macro** repository is a complex, multi-language codebase with Rust microservices, TypeScript packages, and infrastructure-as-code. Finding the right documentation depends on whether you need product-level guides, API references, or internal development instructions. This guide maps every documentation location in the repository.

## Online Documentation at docs.macro.com

The primary resource for end-users and integrators is the hosted documentation site.

### What's Available

- **Product guides** for Email, Channels, Tasks, Docs, Agents, and CRM
- **API reference** with endpoint specifications
- **Getting-started tutorials** and onboarding flows
- **FAQ** and troubleshooting articles

Each product has its own dedicated path. For example, email documentation lives at `https://docs.macro.com/product/email`.

## Repository Documentation Structure

Internal and developer-focused documentation resides directly in the `macro-inc/macro` repository across multiple locations.

### Core Documentation Files

The `docs/` folder at the repository root contains project-wide standards and setup guides:

| File | Purpose |
|------|---------|
| [`docs/STYLE_GUIDE.md`](https://github.com/macro-inc/macro/blob/main/docs/STYLE_GUIDE.md) | Coding conventions, documentation standards, linting rules |
| [`docs/RUNNING_LOCALLY.md`](https://github.com/macro-inc/macro/blob/main/docs/RUNNING_LOCALLY.md) | Step-by-step local development with Docker/Nix |

### Crate-Level READMEs (Rust Libraries)

Each Rust crate in `crates/` contains its own README with library-specific documentation:

- **[`crates/comms_db_client/README.md`](https://github.com/macro-inc/macro/blob/main/crates/comms_db_client/README.md)** — Database client for the communications layer with example queries
- **[`crates/macro_db_client/README.md`](https://github.com/macro-inc/macro/blob/main/crates/macro_db_client/README.md)** — Core database client abstractions
- **[`crates/communication_service/README.md`](https://github.com/macro-inc/macro/blob/main/crates/communication_service/README.md)** — Service-level communication patterns
- **[`crates/attachment/README.md`](https://github.com/macro-inc/macro/blob/main/crates/attachment/README.md)** — File attachment handling utilities

These READMEs link to **Swagger UI** endpoints when services are running locally.

### Service README Files (Microservices)

The `services/` directory contains per-service documentation:

- **[`services/document_storage_service/README.md`](https://github.com/macro-inc/macro/blob/main/services/document_storage_service/README.md)** — API endpoints, Lambda configuration, environment variables, local Docker setup, and Swagger UI location

When running locally via `just stack up`, each service exposes interactive documentation. The Document Storage Service serves its Swagger UI at `http://localhost:8090/docs`.

### Package READMEs (TypeScript)

Shared TypeScript packages in `packages/` include:

- **[`packages/loro-mirror/README.md`](https://github.com/macro-inc/macro/blob/main/packages/loro-mirror/README.md)** — CRDT synchronization layer
- **[`packages/collaboration/README.md`](https://github.com/macro-inc/macro/blob/main/packages/collaboration/README.md)** — Real-time collaboration primitives
- **[`packages/lexical-core/README.md`](https://github.com/macro-inc/macro/blob/main/packages/lexical-core/README.md)** — Editor core integrations
- **[`packages/sdk/README.md`](https://github.com/macro-inc/macro/blob/main/packages/sdk/README.md)** — Generated JavaScript/TypeScript SDK with installation and usage examples

## Infrastructure and Tooling Documentation

### Infrastructure Documentation

The **[`infra/README.md`](https://github.com/macro-inc/macro/blob/main/infra/README.md)** covers Pulumi stack definitions and deployment guides for:

- OpenSearch clusters
- FusionAuth configuration
- S3 buckets and policies
- Other cloud resources

### CLI Tooling Documentation

The **[`tooling/seed_cli/README.md`](https://github.com/macro-inc/macro/blob/main/tooling/seed_cli/README.md)** documents repository-wide scripts for seeding sample data and utilities.

## Accessing Documentation Programmatically

### Opening Online Docs from Rust

```rust
use std::process::Command;

fn open_docs() -> std::io::Result<()> {
    // Opens the main documentation site in the default browser
    Command::new("open")          // macOS – replace with "xdg-open" on Linux
        .arg("https://docs.macro.com")
        .status()?;
    Ok(())
}

```

### Fetching OpenAPI Specifications

```bash

# Download the running service's OpenAPI spec

curl http://localhost:8090/openapi.json > docs/openapi.json

```

### Starting the Local Stack

```bash

# From repository root — see docs/RUNNING_LOCALLY.md for details

just stack up --no-doppler

```

### Using the Generated SDK

```ts
import { MacroClient } from '@macro/sdk';

const client = new MacroClient({ baseUrl: 'http://localhost:8090' });

async function listDocuments() {
  const docs = await client.documents.list();
  console.log(docs);
}

```

## Key Documentation Files Reference

| File Path | Description |
|-----------|-------------|
| [`README.md`](https://github.com/macro-inc/macro/blob/main/README.md) | Top-level overview with quick links to docs.macro.com |
| [`docs/STYLE_GUIDE.md`](https://github.com/macro-inc/macro/blob/main/docs/STYLE_GUIDE.md) | Code and documentation standards |
| [`docs/RUNNING_LOCALLY.md`](https://github.com/macro-inc/macro/blob/main/docs/RUNNING_LOCALLY.md) | Local development environment setup |
| [`services/document_storage_service/README.md`](https://github.com/macro-inc/macro/blob/main/services/document_storage_service/README.md) | Document storage API and local dev notes |
| [`crates/comms_db_client/README.md`](https://github.com/macro-inc/macro/blob/main/crates/comms_db_client/README.md) | Communications database client examples |
| [`packages/sdk/README.md`](https://github.com/macro-inc/macro/blob/main/packages/sdk/README.md) | TypeScript SDK usage and types |
| [`infra/README.md`](https://github.com/macro-inc/macro/blob/main/infra/README.md) | Cloud infrastructure and deployment |
| [`tooling/seed_cli/README.md`](https://github.com/macro-inc/macro/blob/main/tooling/seed_cli/README.md) | Data seeding CLI documentation |

## Summary

- **docs.macro.com** hosts public product guides and tutorials
- **`docs/`** folder contains project-wide standards and setup instructions
- **Crate, service, and package READMEs** provide granular, code-adjacent documentation
- **Running services** expose Swagger UI endpoints for interactive API exploration
- **The main [`README.md`](https://github.com/macro-inc/macro/blob/main/README.md)** serves as the navigation hub to all documentation resources

## Frequently Asked Questions

### What is the official URL for Macro Inc. documentation?

The official documentation site is **https://docs.macro.com**, linked directly from the repository's main README.md. This site contains product guides, API references, and getting-started tutorials.

### How do I find API documentation for a specific Macro service?

Each service README in `services/<name>/README.md` specifies its API surface and Swagger UI endpoint. When running locally with `just stack up`, access interactive documentation at `http://localhost:<port>/docs` — for example, `http://localhost:8090/docs` for the Document Storage Service.

### Where is the Macro TypeScript SDK documented?

The SDK documentation lives in **[`packages/sdk/README.md`](https://github.com/macro-inc/macro/blob/main/packages/sdk/README.md)**, which covers installation, configuration, and usage of the generated `@macro/sdk` package with full TypeScript type definitions.

### How do I set up Macro for local development?

Follow **[`docs/RUNNING_LOCALLY.md`](https://github.com/macro-inc/macro/blob/main/docs/RUNNING_LOCALLY.md)** for step-by-step instructions using Docker or Nix. The guide covers environment setup, dependency installation, and starting the full service stack with `just stack up`.