stackyrd is an open-source, modular service framework for Go built on Gin. It provides a layered architecture with auto-discovered services, middleware, infrastructure components, and a multi-language plugin system - so you can focus on business logic while the framework handles wiring, observability, and lifecycle.
| Layer | What it does |
|---|---|
| Services | Business logic modules auto-registered via init(), toggled via config |
| Middleware | Pluggable HTTP middleware chain (JWT, CORS, rate-limit, audit, security headers) |
| Infrastructure | Managed clients for Redis, PostgreSQL, Kafka, MongoDB, MinIO, Grafana — with async init and health checks |
| Plugins | TypeScript (sandboxed goja), Lua (gopher-lua VM), Python (gRPC subprocess), or Go plugins callable from any service |
| TUI / Console | Interactive bubbletea dashboard or console fallback |
- Microservices with standardized routing, config, and observability out of the box
- Data pipelines with Kafka, batch processing, and cron scheduling
- Multi-tenant APIs with per-tenant Postgres/MongoDB connection management
- Extensible platforms where users upload TypeScript/Python scripts that run safely in sandboxed runtimes
# Clone the repository
git clone https://github.com/diameter-tscd/stackyrd.git
cd stackyrd
# Install dependencies
go mod download
# Run the application
go run cmd/app/main.go
# To build the application
go run scripts/build/build.go
# To download package
go run scripts/pkg/pkg.go
- Full Documentation — Comprehensive guides and references
- Plugin System Guide — Creating and managing TypeScript, Lua, Python, and Go plugins
- Contributing Guide — Development workflow and guidelines
Distributed under the Apache License Version 2.0. See LICENSE for full information.

