fabric

Microbus.io logo

License Apache 2 Reference Test Reference

Teach your agent to code microservices

Your coding agent can already code. Microbus teaches it to master the complex domain of distributed systems — the architecture, the patterns, the operational discipline — and produce enterprise-grade microservices, every time.

Precise Code. Faster. At Scale.

Precise code - Each microservice fits entirely in your agent’s context window. Skills guide every feature. A single, simple API handles the infrastructure. Your agent codes with complete awareness and zero guesswork.

Faster - Agents implement, test, and iterate in one session, in one process. No containers, no external dependencies, no waiting. Tighter dev-test-debug loops mean fewer mistakes and faster delivery.

At scale - Every microservice is independent. Multiple agents — or multiple developers — work on different services simultaneously without merge conflicts or coordination overhead.

Get started in minutes. Microbus is free and open source under the Apache 2.0 license.

Why Microbus?

Microservices are the right architecture for most growing systems, but the conventional toolchain is daunting: container orchestration, service meshes, API gateways, distributed tracing pipelines. Microbus replaces that complexity with a single framework where microservices communicate over NATS using familiar HTTP semantics.

Performant - Persistent multiplexed connections deliver up to 10x the throughput of HTTP/1.1, benchmarked on a single machine to run 10,000 microservices at over 100,000 req/sec.

Observable - Distributed tracing, structured logging and metrics are built in from the start, not bolted on after the fact.

Testable - Spin up a full integration test of multiple microservices in a single Go test function, with no containers or external dependencies required.

AI-native - Deep integration with coding agents lets you go from a plain-language prompt to a production-ready microservice with tests in minutes.

Get Started

Prerequisites

Take a Tour

The examples directory contains microservices that demonstrate key patterns: hello world, calculator, CRUD with a database, events, authentication and more.

Take the agent-guided tour!

HEY CLAUDE…

Follow the workflow at https://raw.githubusercontent.com/microbus-io/fabric/refs/heads/main/setup/bootstrap.md to bootstrap Microbus. Then find the appropriate skill and take me through the tour

Build Your First Microservice

The step-by-step tutorial walks you through creating a microservice from scratch, covering endpoints, configuration, web handlers and integration tests.

Start a New Project

Ready to build your own solution? Bootstrap a new project from scratch.

Build with a Coding Agent

Microbus is designed to work hand-in-hand with coding agents like Claude Code. The framework’s structured project layout and embedded guidance keep the agent’s context window small and its output accurate.

Ask your coding agent to bootstrap Microbus:

HEY CLAUDE…

Follow the workflow at https://raw.githubusercontent.com/microbus-io/fabric/refs/heads/main/setup/bootstrap.md to bootstrap Microbus

Then prompt your way to a fully-implemented microservice:

HEY CLAUDE…

Create a new microservice “helloworld”

HEY CLAUDE…

Create a web handler that prints “Hello, World!”

HEY CLAUDE…

Create a config for the greeting, with a default of “Hello”. The greeting must start with a capital letter and not be empty

HEY CLAUDE…

Create a functional endpoint Add that sums up two integers x and y and returns the sum

HEY CLAUDE…

Fire an event OnDouble when x==y in Add

HEY CLAUDE…

Create a metric that totals the positive sums in Add, and another that totals the negative sums

Six prompts. Under 10 minutes. 819 lines of code at 87% test coverage.

Learn more about how coding agents work within the Microbus framework.

Deploy

Bundle microservices into applications and deploy them to match your scale: as a single binary, a handful of containers, or across availability zones. Microservices communicate via a messaging bus.

Observe

Distributed tracing, metrics and structured logging provide precision visibility into system behavior.

Architecture

Your solution is built on top of 5 layers of powerful technologies that together form a robust foundation:

OSS - A curated selection of proven technologies — NATS for messaging, OpenTelemetry for observability, Grafana for visualization — abstracted away by the layers above.

Connector - The Connector is the base construct from which all microservices are derived. It provides a consistent API for transport, observability, configuration and lifecycle management.

Coding agents - Coding agents generate boilerplate, business logic, tests and documentation using embedded skills that guide each feature end to end.

Microservices - Core microservices ship with the framework. Solution microservices implement your business logic. Both are built the same way using the same tools.

Applications - Microservices are bundled into applications according to the desired topology — a single binary, a handful of containers, or across availability zones.

Features

Transport

| | | |—|—| | Unicast | 1:1 request/response between microservices | | Multicast | 1:N publish/subscribe | | Multiplexed connections | Persistent connections with up to 10x HTTP/1.1 throughput | | Service discovery | Dynamic, no registry required | | Load balancing | Automatic distribution across replicas | | Time budget | Cascading timeout propagation | | Ack or fail fast | Immediate feedback on request delivery | | Locality-aware routing | Prefer co-located replicas | | Connectivity check | Liveness detection | | Short-circuit | In-memory transport for co-located services |

Observability

| | | |—|—| | Distributed tracing | Cross-service call visualization via OpenTelemetry | | Structured logging | JSON logging to stderr | | Metrics | Prometheus-compatible metrics | | Error capture | Stack traces preserved across service boundaries |

Developer Experience

| | | |—|—| | Client stubs | Type-safe generated clients | | Integration testing | Multi-service tests in a single process | | Static resources | Embedded files via go:embed | | Events | Decouple services with event-driven patterns | | Tickers | Recurring scheduled jobs |

Robust Runtime

| | | |—|—| | Configuration | Centralized YAML-based config | | Authorization | JWT-based access control | | Adaptable topology | Monolith, multi-container, or hybrid | | OpenAPI | Auto-generated API documentation | | Distributed caching | Shared cache across replicas | | Graceful shutdown | Drain pending operations before termination |

Documentation

Guides

Reference

Design

Get Involved

We want your feedback. Clone the repo, try things out and let us know what worked for you, what didn’t and what you’d like to see improved.

Help us spread the word. Let your peers and the Go community know about Microbus.

Give us a Github star.

Reach out if you’d like to contribute code.

Corporation? Contact us for sponsorship opportunities.

Contact

Find us at...  
Website www.microbus.io
Email info@microbus.io
Github github.com/microbus-io
LinkedIn linkedin.com/company/microbus-io
Discord discord.gg/FAJHnGkNqJ
Reddit r/microbus
YouTube @microbus-io

The Microbus framework is the copyrighted work of various contributors. It is licensed to you free of charge by Microbus LLC - a Delaware limited liability company formed to hold rights to the combined intellectual property of all contributors - under the Apache License 2.0.

Refer to the list of third-party open source software for licensing information of components used by the Microbus framework.