go-chi

    go-chi/chi

    lightweight, idiomatic and composable router for building Go HTTP services

    23.1K stars
    2.3K forks
    200 GitHub watchers
    Updated Nov 7, 2026
    View on GitHub

    Build with Backblaze B2

    SDKs, agent skills, IDE extensions, and reference pipelines from Backblaze Labs. All open source.

    Explore Backblaze Labs

    Loading star history...

    Where it stands

    Rank, growth pace and release cadence relative to everything GStars tracks.

    3 releases in the last 90 days, the latest 23 days ago, with 170 contributors on GitHub.

    Peaked at #50 in the weekly ranking the week of Nov 16, its best in the past year.

    Use Cases & Benefits

    • Provides a lightweight, idiomatic, and composable HTTP router for building Go REST API services.
    • Offers fast performance with minimal code, full compatibility with net/http, and modular middleware support without external dependencies.
    • Use for building maintainable, large-scale REST APIs with context-aware routing and middleware in Go.
    • Use for creating microservices that require composable route groups, sub-routers, and inline middleware chains.
    • Use for integrating standard net/http middleware and generating routing documentation automatically from source code.

    Should you depend on it?

    License terms, project hygiene and risks, from GitHub metadata and GStars' snapshots.

    License

    MIT

    Permissive: commercial use, modification and redistribution are allowed with attribution.

    Community files

    • README: present
    • Contributing guide: present

    Watch-outs

    No watch-outs from GStars' checks.

    General guidance from repository metadata, not legal advice. How we score

    From the README

    chi is a lightweight, idiomatic and composable router for building Go HTTP services. It's especially good at helping you write large REST API services that are kept maintainable as your project grows and changes. chi is built on the new context package introduced in Go 1.7 to handle signaling, cancelation and request-scoped values across a handler chain.

    The focus of the project has been to seek out an elegant and comfortable design for writing REST API servers, written during the development of the Pressly API service that powers our public API service, which in turn powers all of our client-side applications.

    The key considerations of chi's design are: project structure, maintainability, standard http handlers (stdlib-only), developer productivity, and deconstructing a large system into many small parts. The core router github.com/go-chi/chi is quite small (less than 1000 LOC), but we've also included some useful/optional subpackages: middleware, render and docgen. We hope you enjoy it too!

    Excerpt from the go-chi/chi README on GitHub (MIT license). © its authors.Read the full README on GitHub

    Daily snapshots

    Stars gained per day, and how forks and open issues moved, from GStars' daily snapshots

    Forks

    2.3K+1.2K

    Open issues

    144+35

    Compared with peers in API

    Fastest-growing repositories GStars tracks in this cohort for the week of Nov 8, by 7-day star growth

    go-chi/chi compared with API repositories by stars, 7-day star growth, health score and last release
    RepositoryStars+7dHealthLast release
    anthropics/claude-quickstarts20.5K+73375—
    vxcontrol/pentagi33.9K+7197536 days ago
    N4darae/shrt2.6K+5298—
    agentgateway/agentgateway6.1K+1877514 days ago
    go-chi/chi23.1K—5923 days ago
    BenedictKing/ccx4.0K—32117 days ago
    Category median6.1K+62475—

    Discover Repositories

    Search across tracked repositories by name or description