Skip to content

Duragraph/duragraph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

DuraGraph

DuraGraph Logo

An open, extensible orchestration layer for AI and workflow automation

DuraGraph provides a LangGraph Cloud-compatible API built with Event Sourcing and CQRS patterns for reliable, observable, and maintainable AI pipelines that can be self-hosted in enterprise environments.

🎯 Mission

Enable reliable, observable, and maintainable AI pipelines that feel natural for developersβ€”bringing the power of LangGraph Cloud to self-hosted and enterprise environments with:

  • API Compatibility: Drop-in replacement for LangGraph Cloud APIs
  • Enterprise Ready: Self-hosted, compliant, secure
  • Fault Tolerant: Event sourcing with reliable event delivery via outbox pattern
  • Observable: Rich monitoring and workflow introspection

πŸš€ Quick Start

Get started with DuraGraph in minutes:

πŸ“– View Documentation | πŸŽ“ Quick Start Guide

One-Click Deploy

Deploy DuraGraph to your preferred cloud platform:

Deploy on Fly.io Deploy to Render Deploy on Railway Deploy on DigitalOcean Deploy on Scaleway

Local Development

# Clone the repository
git clone https://github.com/Duragraph/duragraph.git
cd duragraph

# Start all services with Docker Compose
docker-compose up -d

# Or use Task
brew install go-task/tap/go-task
task up

Visit http://localhost:8080 for the API and http://localhost:5173 for the dashboard.

πŸ‘‰ Full Setup Guide

πŸ—οΈ Architecture

flowchart LR
  client["Client SDKs / LangGraph Cloud clients"]
  api[API Server - Go/Echo]
  eventstore[(Event Store - PostgreSQL)]
  nats[NATS JetStream]
  engine[Graph Execution Engine]
  dashboard[Svelte Dashboard]

  client --> api
  api --> eventstore
  api --> engine
  eventstore --> nats
  nats --> dashboard
  engine --> eventstore
Loading

πŸ”§ Architecture Details

⚑ Key Features

  • πŸ”„ LangGraph Cloud API Compatible - Drop-in replacement for existing LangGraph Cloud integrations
  • 🏒 Self-Hosted - Full control over your data and infrastructure
  • ⚑ Event Sourcing & CQRS - Reliable, auditable workflow execution with event-driven architecture
  • πŸ” Observable - Rich monitoring, tracing, and debugging tools with Prometheus metrics
  • 🧩 Extensible - Custom graph execution engine with support for LLM nodes and tool execution
  • πŸ“Š Visual Dashboard - Real-time workflow visualization with Server-Sent Events
  • 🐳 Docker Ready - Easy deployment with Docker Compose or Kubernetes

πŸ“š Documentation

πŸ”§ Basic Usage

from langgraph_sdk import get_client

# Point to your DuraGraph instance
client = get_client(url="http://localhost:8080")

# Use exactly like LangGraph Cloud
assistant = await client.assistants.create(...)
thread = await client.threads.create()
run = await client.runs.create(
    thread_id=thread["id"],
    assistant_id=assistant["id"]
)

πŸ“– Full API Documentation

πŸ—‚οΈ Project Structure

duragraph/
β”œβ”€β”€ cmd/server/          # API server (Go)
β”œβ”€β”€ internal/
β”‚   β”œβ”€β”€ domain/          # Domain models (aggregates, entities, events)
β”‚   β”œβ”€β”€ application/     # Use cases (commands, queries, services)
β”‚   β”œβ”€β”€ infrastructure/  # External concerns (HTTP, persistence, messaging)
β”‚   └── pkg/             # Shared utilities (errors, eventbus, uuid)
β”œβ”€β”€ dashboard/           # Svelte visualization dashboard
β”œβ”€β”€ website/             # Landing page (Vite/React)
β”œβ”€β”€ docs/                # Documentation (Fumadocs/Next.js)
β”œβ”€β”€ deploy/              # Docker, SQL migrations
└── Taskfile.yml         # Development task runner

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes and add tests
  4. Run tests: task test
  5. Open a Pull Request

πŸ› οΈ Development Guide

πŸ“„ License

Licensed under the Apache License 2.0.

πŸ™‹ Support

πŸ—ΊοΈ Roadmap

  • LangGraph Cloud-compatible API
  • Event sourcing with CQRS pattern
  • Custom graph execution engine
  • Outbox pattern for reliable event delivery
  • PostgreSQL event store with NATS JetStream messaging
  • Fumadocs documentation site
  • Svelte dashboard for visualization
  • Server-Sent Events streaming
  • Enhanced LLM provider support (additional models)
  • Advanced workflow patterns (parallel execution, subgraphs)
  • Production Helm charts
  • Multi-tenant support
  • Workflow versioning and migration tools

πŸ“‹ Full Roadmap


DuraGraph - Bringing enterprise-grade AI workflow orchestration to everyone.

Get Started Β· Documentation Β· Community

About

Duragraph: Graph-native AI tooling

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •