Architecture · Runtime · Observability

Design microservices
visually.
Generate code you own.

Build typed service graphs on a visual canvas or in a Python architecture DSL. Generate Go, C++, Python, Rust and TypeScript projects with HTTP, gRPC, Kafka and OpenTelemetry. Implement business logic in explicit extension points.

1graph = architecture + runtime + traces
0lines of wiring to write
Tracesampled requests through the graph
Order Pipeline — Example
requestresponseInputSplitProcessDelayErrorMapMerge
7 nodes8ms avg latency✓ fully traced

Design and Generate a Service Graph

One Graph. Five Languages.

Code generation from architecture produces native projects without flattening every language into the same implementation. Model HTTP and gRPC APIs, event-driven architecture, and Kafka stream processing once; each ServiceLib runtime preserves the graph contract using the ecosystem its developers expect.

GO

Go

Reference runtime

Go · goroutines and the standard library

net/httpgRPC-GoIBM SaramaTemporal SDKOpenTelemetry
ToolchainGo · golangci-lint · Buf
QualityRace builds · Workflow determinism
Go project guide
C++

C++

Two native runtimes

C++20 · choose userver or Boost.Asio

userverBoost.Beastasio-grpclibrdkafkaOpenTelemetry
ToolchainCMake · Conan 2 · clang
QualityASan · UBSan · TSan
C++ project guide
PY

Python

Asyncio runtime

Python 3.12+ · asyncio execution

aiohttpgrpcioaiokafkaTemporal SDKOpenTelemetry
Toolchainuv · mypy · Ruff
QualityTests · type checks · packaging
Python project guide
RS

Rust

Tokio runtime

Rust 1.97+ · async tasks and ownership

TokioAxumTonicrust-rdkafkaOpenTelemetry
ToolchainCargo · rustfmt · Clippy
QualityLocked workspace builds
Rust project guide
TS

TypeScript

Node.js runtime

Node.js 24 LTS · strict ESM TypeScript

Node async I/Ogrpc-jsConfluent Kafka JSTemporal SDKOpenTelemetry
Toolchainpnpm · tsc · ESLint · Prettier
QualityCoverage · benchmarks · profiling
TypeScript project guide
Generated developer experience

Not a code dump. A complete delivery loop.

Every generated project exposes the same Make interface while delegating to the native tools of its target language.

01

Build with confidence

make buildmake testmake lint

Native compilers, formatters, type checks, and language-specific quality gates.

02

Run and debug locally

make docker-up-devmake debug-<service_name>

Source-mounted Docker Compose services with a debugger port for each generated service.

03

Deploy the whole graph

make kubernetes-upmake kubernetes-test

Build images, install infrastructure and Helm releases, then verify rollouts and metrics.

04

Regenerate safely

make merge-checkmake merge-validate

Preview generated changes and preserve user-owned code through explicit merge hooks.

One behavioral contract. The runtimes share stream semantics, lifecycle and graceful shutdown rules, configuration, OpenTelemetry tracing, and Prometheus-compatible metrics.

Typed authoring interface

Prefer code? Build the same graph in Python.

Use the typed Python architecture DSL as architecture as code: factories, enums, and object references replace fragile string keys. Validate the model, produce canonical YAML, reconstruct Python from existing YAML, or call the generation API and download the generated project as a ZIP.

typed Pythonvalidate()canonical YAMLgenerated services

Describe the architecture. Let the agent build it safely.

Use Codex as an AI service designer without asking it to guess symbolic references in a large YAML file. The Service Architect Codex MCP server gives the agent a typed Python authoring API, graph-aware rules, deterministic validation, and code generation for services, streams, connectors, endpoints, pools, and types.

Local inspection and validation need no cloud credentials. An API key is used only when Codex requests generated runtime code.

service-architect / agent session
YOU

Process inventory reservations in parallel, using the Inventory Workers pool with priority 10.

01
AuthorTyped Python graph
priority_task_pool_call()
02
ValidateAuthoritative SG_* rules
contract matched
03
ExportCanonical interchange
architecture.yaml
04
GenerateNative runtime project
project.zip
Graph-safe operation completed
Open Service Architect is for distributed systems what React is for UI.
1You describe a graph.
2The framework generates the wiring.
3You implement business logic.
4Recorded telemetry relates execution to modeled stages.
The graph defines the architecture you choose to model. Generated wiring makes that composition executable; business functions remain ordinary code.

Architecture That Becomes Code

Shape your system through architecture.
Implement business logic in ordinary code.

In a large project, understanding the architecture means piecing together source code, documents and team knowledge. Diagrams help explain the design, but do not by themselves carry architectural changes into the implementation.

Service Architect makes architecture a working part of development. Describe meaningful business stages, their contracts and interactions. The generator turns that composition into code; you implement each stage in your chosen language.

The graph does not need to reproduce your program line by line. A node can represent a simple operation or a complete business stage. You choose what to expose, review and change through architecture, and what to keep inside a function. Less context to understand, clearer changes to review, and freedom to implement.

Architecture shapes implementation. Modeled connections and contracts build the executable composition. They are not a separate illustration to maintain alongside the code.
🔄
You choose the level of detail. Show meaningful business stages. Explore pipelines, components and substreams where detail helps you understand the system, not every condition and function call.
🚀
Ordinary code stays ordinary code. Implement business functions yourself or with an agent. The graph does not dictate their internal algorithms or require every action to become a node.

Modern Backends Are Hard

Building distributed systems means dealing with complexity that compounds at every layer.

MicroservicesAPIsEvent StreamsAsync WorkflowsRetriesError PropagationObservabilityDocumentation Drift
The bigger the system gets, the harder it becomes to answer:
"What is happening right now?"

From a Service Graph to a Running Project

Start with an example, inspect the native code and verify the result. Each guide connects an architectural choice to a concrete development workflow.

Generate your first microservice

Model an HTTP endpoint, connect typed processing and implement the generated business contracts.

Visual microservice tutorial →

Regenerate without losing business code

Review a new archive, preserve application-owned files and verify changed interfaces.

Safe code regeneration →

Inspect traces and Grafana metrics

Find a sampled request and connect runtime behavior to the graph and its dashboards.

OpenTelemetry walkthrough →

Docker Compose · Generated Helm charts · Pools and parallel execution

What It Costs — And What You Get Back

Separate repeatable infrastructure work from the application behavior your team needs to implement, review and operate.

Generate
Infrastructure from the Graph
Create contracts, runtime wiring, telemetry and deployment files from one architecture model.
Implement
Business Logic in Explicit Functions
Work in typed extension points and verify behavior with the generated build and test workflow.
Observe
Execution in Architectural Context
Connect recorded requests, errors and runtime metrics to the modeled execution stages.
Today

A new service needs HTTP handlers, middleware, configuration, metrics and tests before its business behavior can be verified.

With Service Architect

Generate the common infrastructure, implement the business functions and validate them using the project build and test workflow.

Today

Maintaining architectural wiring separately in diagrams and code can create drift.

With Service Architect

The graph defines the architecture you choose to model. Generated wiring makes that composition executable; business functions remain ordinary code.

Today

When something breaks in production, engineers spend hours reading logs trying to reconstruct what happened.

With Service Architect

Recorded traces connect failures to modeled stages. Available detail depends on instrumentation, sampling and data-capture settings.

Today

Understanding the context for an AI-assisted change can require tracing dependencies across many files.

With Service Architect

The graph supplies architectural context and contracts. The team chooses the scope; it does not restrict what user-written business code may do.

Who uses this
🚀

Startups

Ship backend services without a dedicated platform team. Move as fast as a large engineering org from day one.

📈

Scale-ups

Standardize how services are built across teams. Eliminate the inconsistency that comes with ten engineers making ten different infrastructure choices.

🏢

Enterprise

Reduce the cost of maintaining distributed systems. Get visibility into every service without a dedicated observability team.

💼

Investors

The code generation and AI-integration market is growing fast. This is a developer tool with a clear ROI story and zero runtime lock-in.

Make Architecture Executable

Use the graph to change the composition of your service, not just illustrate it. Generated wiring implements modeled connections and contracts; developers choose the level of detail and implement business behavior in code.

Draw the Architecture

Model meaningful business stages, contracts and interactions. Choose which details belong in the graph and which stay inside functions.

Generate the Composition

Generate native service wiring and contracts from the model, then implement business behavior in ordinary code.

🔭

Observe Modeled Stages

Relate recorded traces and metrics to modeled nodes. Visibility depends on instrumentation, collection and sampling; function internals remain code.

Before business logic

Six concerns to coordinate by hand

01 Decode and validate HTTP02 Propagate deadline and cancellation03 Fan out work and join results04 Manage gRPC clients and contracts05 Route failures without losing context06 Instrument modeled execution paths
Executable topology

Describe the flow once

HTTP Input · Process Order
Split
↓ ↓
FlatMap → gRPC Sink → Map
Delay → Map
Merge → Response
6graph nodes
1source model
0manual wiring layers

Transport, concurrency, deadlines, errors, telemetry, and lifecycle are derived from the topology.

Let AI Implement Business Logic

Instead of asking AI to generate an entire application — constrain it to one function at a time. The framework handles everything else.

Bounded implementation task

Get Inventory Item Data

AI receives a small typed contract, not permission to redesign the application.

InputOrderItem
SuccessOrderItemResult
Error streamOrderItemResult
reserve inventory
reservedemit success
unavailableemit error

No HTTP handler. No gRPC setup. No tracing boilerplate. No lifecycle code.

🎯

Smaller Tasks

Give an agent the relevant stages and contracts, then agree on the scope of the change.

Clearer Contracts

Explicit inputs and outputs make intent easier to discuss and review. Tests and implementation review still matter.

🧠

Less Boilerplate to Invent

Generated wiring supplies the modeled infrastructure. Agents can work on architecture or business code within a scope chosen by the team.

👁

Easier Reviews

Review architectural changes as graph changes, then inspect affected business implementations.

OpenTelemetry Traces Through Your Service Graph

Generated telemetry uses the identities of modeled nodes and links, so recorded traces can be explored in architectural context. Trace coverage and captured values depend on instrumentation, sampling and runtime settings; the graph does not automatically expose every action inside a business function.

Trace · ord-9f3a1c22ms total
▶ POST /v1/processorder · 2 items
0ms├─Input · Process Orderorder{id: ord-9f3a1c, items: 2}
1ms├─Split Pipeline→ 2 branches
parallel branch · per item
2ms│ ├─FlatMap · Order Items× 2 emitted
4ms│ ├─gRPC Sink · InventoryITEM-001 reserved · ITEM-042 reserved
18ms│ └─Map · Item Result2× CONFIRMED
timeout branch · not reached
1ms│ ├─Delay · Soft Deadline25ms — deadline not fired
│ └─Map · Order Stateskipped
20ms└─Merge ResultsCONFIRMED · 2/2 items · → response
Same graph, live data

The trace runs through the exact nodes you designed. No separate trace UI to learn.

Branches shown as branches

Parallel fanout, timeout paths, error streams — all visible as separate branches in the trace, matching graph structure exactly.

🔍
Values at every node

See the actual data — inputs, outputs, errors — at each node for any request. No log parsing required.

Zero config

Instrumentation for modeled stages is generated. Configure telemetry collection and sampling, and instrument function internals when you need additional detail.

Generate APIs, Runtime Wiring and Deployment Projects

Service Architect generates typed contracts, infrastructure and explicit business-code extension points. Implement and test your application logic in the generated project before deploying it.

HTTP endpoints
gRPC endpoints
Service clients
Configuration
Serialization
Runtime wiring
Prometheus metrics
OpenTelemetry tracing
Grafana dashboards
API documentation
Integration tests
Stream wiring
01

Runtime graph

Typed stream wiring, service lifecycle, configuration models, serialization, pools, and call semantics.

service.generatedconfig.generatedserdes/
02

Integration contracts

HTTP routes, OpenAPI models, protobuf modules, gRPC clients and servers, and connector adapters.

openapi/proto/transport/
03

Operations

OpenTelemetry instrumentation, Prometheus metrics, health endpoints, and runtime-specific Grafana dashboards.

telemetrymetricsgrafana/
04

Delivery

Native build tooling, Docker images, Compose environments, Kubernetes and Helm deployment, CI, and safe merge scripts.

MakefileDockerfilehelm/
Generated and regenerated safelyInfrastructure · wiring · contracts · operations
+
Owned by your teamBusiness functions · custom configuration

One Architecture. Five Runnable Projects.

The same non-trivial order system is generated for every supported runtime. Inspect the actual projects, then follow one request through the shared architecture.

Shared Order Pipeline
HTTP Input · Process Order
Split Pipeline
FlatMap · Order Items
gRPC Sink · Inventory
Map · Item Result
Delay · Soft Deadline
Map · Order State
Merge Results → Response
One Request, Explained
01

Accept a typed order with two items over HTTP.

02

Fan out item work and call Inventory over gRPC.

03

Race the result branch against a soft deadline.

04

Merge both outcomes into one confirmed response.

CONFIRMED · 2/2 items2 services · parallel branches · one distributed trace
22ms

A New Way to Build Backend Systems

Traditional DevelopmentService Architect
Wiring described and implemented separatelyModeled wiring generates the composition
Manual service wiringGenerated automatically
Observability added later — or neverBuilt in from day one
Architectural intent buried in code diffsReview architecture and implementation separately
Debugging means reading logsGraph context + recorded traces
Hidden runtime behaviorTelemetry for modeled execution boundaries

Design the System. Execute Durably with Temporal.

Service Architect and Temporal solve different parts of the same distributed-system problem. Service Architect models the complete service topology and generates its runtime wiring. Temporal provides durable workflow execution. Define a Temporal workflow or Activity endpoint, configure an optional Temporal schedule, and Service Architect generates the connection, worker, client, lifecycle, and target-language Temporal SDK integration.

Temporal integration supports Go, Python and TypeScript. Read Cron vs Temporal, Workflow endpoints, Activities and Schedules.

AspectService ArchitectTemporal
ResponsibilityDesigns and validates the modeled service topologyExecutes Workflows and Activities durably
Source modelVisual graph, typed Python DSL, and canonical YAMLWorkflow and Activity code plus persisted Event History
System boundariesHTTP, gRPC, Kafka, Cron, streams, errors, and Temporal connectionsWorkflow, Activity, Task Queue, Schedule, Signal, and Update execution
Generated runtimeNative service projects and lifecycle wiring; Temporal adapters for Go, Python, and TypeScriptSDK workers connected to Temporal Service or Temporal Cloud
ObservabilityOpenTelemetry traces, metrics, and dashboards mapped to the architecture graphEvent History, Temporal Web UI, SDK metrics, and tracing
Best fitExecutable service architecture, request pipelines, event processing, and integration designRetries, durable timers, sagas, compensation, and long-running execution

Use Service Architect on its own for service pipelines that do not require durable execution. Add a Temporal workflow, Activity, or Temporal schedule where work must survive restarts, retry reliably, wait for long periods, or coordinate compensation. The modeled integration stays visible in the graph while Temporal owns durable execution.

Open Core. Production Focused.

Own your application code and choose where to deploy it. Generated projects use Go, C++, Python, Rust or TypeScript with the corresponding ServiceLib runtime; the architecture model and runtime remain explicit project dependencies.

📖

Source Available

Read, audit, and contribute to the framework.

🏠

Code Belongs to You

You own the application code. Generated services use the selected ServiceLib runtime, without a hosted Designer dependency.

🔓

Deploy on Your Terms

Native projects you can build and deploy on your own infrastructure.

📡

Standard OpenTelemetry

Works with any compatible tracing and metrics backend.

Lightweight Runtime

A small runtime library coordinates the graph execution. Generated services use the selected language and ServiceLib runtime. You own the application code and choose where to deploy it.

Inspect the Contract and Reproduce the Results

The cross-language conformance project compares observable service behavior, traces, metrics and lifecycle scenarios. Its suites document which runtimes and cases each check covers.

Read the conformance tests → · Read the benchmark and its limits →

The Future Of Backend Development

Architecture becomes executable.

🔭

Observability becomes the primary interface.

🤖

AI focuses on business logic.

🧑‍💻

Developers focus on system design.

Stop Wiring Services.
Start Designing Systems.

Shape systems through executable architecture. Choose meaningful business stages, implement them in ordinary code, and review changes with architectural context.