Skip to main content

The Plugin-Powered Foundation for
Go Microservices

One unified runtime for CLI scaffolding, config wiring, service governance, and 25+ official plugins. From lynx new to production — boot everything with a single line of code.

main.go
func main() { if err := boot.NewApplication(wireApp).Run(); err != nil { panic(err) } }
lynx runtime
INFOlynx: boot sequence started
INFOplugin[mysql]: connected, pool ready
INFOplugin[redis]: connected
INFOplugin[tracer]: otel exporter ready
INFOplugin[http]: listening on :8080
INFOplugin[grpc]: listening on :9090
OKlynx: application ready in 87ms
25+Official plugins for mainstream middleware
1 lineOf code to boot the whole app
3 stepsFrom install to running locally
MIT100% open source
Ecosystem

One plugin model, connected to the infrastructure you already run

MySQLPostgreSQLSQL ServerMongoDBRedisElasticsearchKafkaRabbitMQRocketMQPulsarNacosPolarisEtcdApolloSeataDTMSentinelOpenTelemetrySwaggergRPCHTTPMySQLPostgreSQLSQL ServerMongoDBRedisElasticsearchKafkaRabbitMQRocketMQPulsarNacosPolarisEtcdApolloSeataDTMSentinelOpenTelemetrySwaggergRPCHTTP
Capabilities

Everything a microservice needs, in one runtime

Lynx is not another web framework. It consolidates microservice infrastructure into a unified plugin model with lifecycle orchestration.

CLI Scaffolding

lynx new generates the project skeleton and config in one shot — a runnable service in minutes.

Plugin Runtime

Registration, dependency resolution, topological sorting, and lifecycle orchestration in one layer — no scattered glue code.

Service Governance

Service discovery, circuit breaking, rate limiting, health checks, and TLS out of the box — powered by Polaris, Nacos, and Sentinel.

Observability

OpenTelemetry-based tracing, metrics, and Swagger docs — enabled as plugins with a single config entry.

Data & Messaging

MySQL, PostgreSQL, Redis, MongoDB, Kafka, RocketMQ, and more — integrated through one consistent model.

Distributed Building Blocks

Distributed transactions (Seata / DTM), distributed locks (Redis / Etcd), and ID generation — plug and play.

Plugin Matrix

25+ official plugins, ready when you are

Every plugin follows the same registration, configuration, and lifecycle contract — integrating any of them feels exactly the same.

Architecture

Boot and service flow, at a glance

The unified runtime resolves plugin dependencies and orchestrates lifecycles; capability plugins extend the system, while resources and governance keep it production-ready.

Config-Driven

Configuration is the switch for every capability

Startup-critical information lives in one boot config. What you declare is what gets wired — environment differences stay obvious.

  • Write the config, add the module, register the plugin — three steps to integrate any middleware
  • Load order and dependencies are resolved by the runtime, no manual orchestration
  • With a config center attached, business config can live in Nacos / Apollo / Polaris / Etcd
Learn Bootstrap Config
config.yml
lynx: application: name: user-service version: v0.1.0 http: addr: 0.0.0.0:8000 timeout: 5s redis: addrs: - 127.0.0.1:6379 nacos: server_configs: - ip_addr: 127.0.0.1 port: 8848
Quick Start

Run your first Lynx service in three steps

Read the Docs
  1. 1

    Install the CLI

    One command installs the Lynx CLI. Go 1.26+ required.

    go install github.com/go-lynx/lynx/cmd/lynx@latest
  2. 2

    Create a project

    Generates a standard skeleton, config files, and layout.

    lynx new demo
  3. 3

    Boot with one line

    Plugin wiring, ordering, and startup are handled by the runtime.

    boot.NewApplication(wireApp).Run()
FAQ

Questions you might have

Does Lynx replace frameworks like Gin or Kratos?

No. Lynx focuses on plugin orchestration and a unified runtime, not the web layer. Service communication builds on the Kratos ecosystem (HTTP / gRPC), and the official project template follows a Kratos-style layered structure.

Which Go version do I need?

The framework's go.mod declares Go 1.26. On Go 1.21+, the toolchain directive automatically downloads a matching toolchain.

What does it take to integrate a new middleware?

Three things: add the plugin module dependency, declare its entry info in config, and register it into the plugin factory. All 25+ official plugins follow the same contract, and you can write custom plugins against the same interface.

Can I adopt it incrementally in an existing project?

Yes. Plugins are enabled on demand — start with a single capability such as tracing or a config center, then gradually consolidate the rest. No big-bang rewrite required.

What service governance capabilities are included?

Service discovery (Polaris / Nacos / Etcd), circuit breaking and rate limiting (Sentinel), health checks, TLS certificate management, and OpenTelemetry-based tracing and metrics — all as plugins.

Where do I get help?

File an issue on GitHub, or join Discord to talk to the maintainers directly. Site-wide search covers every plugin doc.

Ready to build your next microservice?

Start with a single go install and get a production-grade service skeleton in minutes.