The high-performance API framework for Go

Modular. Observable. Cloud-native. Production-ready.

0
req/sec
0
latency
0
per request

Start in seconds

From zero to production-ready API in under a minute.

~/my-api

Built for production

Everything you need to build, deploy, and operate web services at scale.

Blazing Fast

8.4M+ requests per second with 119ns latency. Radix tree router with Bloom filter optimization.

Integrated Observability

OpenTelemetry-native with built-in metrics, tracing, and structured logging. No assembly required.

Automatic OpenAPI

Generate OpenAPI 3.0/3.1 specs from your code. Built-in Swagger UI with zero configuration.

Production Ready

Graceful shutdown, health checks, panic recovery, mTLS, and comprehensive middleware.

Everything you need, nothing you don't

Functional options everywhere. Configure observability, OpenAPI, health checks, and more—all the same way.

main.go
a := app.New(
    // Service identity
    app.WithServiceName("my-api"),
    app.WithServiceVersion("v1.2.3"),
    
    // Observability: metrics + tracing + logging
    app.WithObservability(
        app.WithMetrics(),
        app.WithTracing(tracing.WithOTLP("localhost:4317")),
        app.WithLogging(logging.WithJSONHandler()),
    ),
    
    // OpenAPI documentation
    app.WithOpenAPI(openapi.WithTitle("My API")),
    
    // Health & readiness checks
    app.WithHealthEndpoints(
        app.WithReadinessCheck("database", dbPingCheck),
    ),
)
🌿

Wild Rhubarb of the Mountains

Named after the wild rhubarb plant that thrives at 1,500–3,000 meters in harsh mountain terrain of Iran. It withstands extreme conditions, yet provides nourishment for centuries.

🛡️
Resilient
Production-ready
Lightweight
16 bytes/request
🔧
Adaptive
Local to cloud
📦
Self-sufficient
Integrated observability

Ready to build?

$ go get rivaas.dev/app