chi is a lightweight, open source composable router for building Go HTTP services. It also helps in writing large REST API services, keeping them maintainable as the project evolves. Having been built on the latest context package, it can easily handle signaling, cancelation and request-scoped values across a handler chain.

chi was built with the sole focus of providing an elegant and comfortable design for writing REST API servers. Its design chiefly considers project structure, maintainability, standard http handlers (stdlib-only), developer productivity, and deconstructing a large system into many small parts. It is very lightweight and fast (according to benchmarks), yet is still able to include several useful subpackages (middleware, render and docgen).

Features

  • Fast and lightweight ( ~1000 LOC )
  • 100% compatible with net/http
  • Designed for modular/composable APIs (middlewares, route groups and subrouter mounting)
  • Context control (provides value chaining, cancellations and timeouts)
  • Robust (in production at Pressly, CloudFlare and several others)
  • Automatic Doc generation
  • No external dependencies

Project Samples

Project Activity

See All Activity >

Categories

HTTP Servers

License

MIT License

Follow chi

chi Web Site

Other Useful Business Software
Next-Gen Encryption for Post-Quantum Security | CLEAR by Quantum Knight Icon
Next-Gen Encryption for Post-Quantum Security | CLEAR by Quantum Knight

Lock Down Any Resource, Anywhere, Anytime

CLEAR by Quantum Knight is a FIPS-140-3 validated encryption SDK engineered for enterprises requiring top-tier security. Offering robust post-quantum cryptography, CLEAR secures files, streaming media, databases, and networks with ease across over 30 modern platforms. Its compact design, smaller than a single smartphone image, ensures maximum efficiency and low energy consumption.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of chi!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Go

Related Categories

Go HTTP Servers

Registered

2020-07-06