A full-featured Go web framework, in one import.
Iris is an open-source HTTP/2 web framework for the Go programming language, first released in 2016. It ships MVC, dependency injection, WebSocket support, and a middleware system in the core, so a service takes fewer moving parts to stand up.
Licensed BSD-3-Clause. Star and fork counts read from the GitHub API on 2026-07-10.
Everything you need to build fast, reliable web applications with Go
HTTP/2 support and a router tuned for zero allocations in the hot path
Full-featured MVC framework with powerful view engine and data binding
Build production-ready REST APIs with automatic documentation
Native WebSocket and Server-Sent Events with Neffos integration
Comprehensive security features for enterprise applications
Works with the databases and ORMs Go developers already use
Iris was engineered for production workloads, with zero memory allocations in the hot path. We do not ask you to take that on faith. The benchmark suite we use is open source, it covers several HTTP/2 servers, and it was last run in 2024. Read the methodology and run it against your own workload.
See the benchmarksThe pieces a production service needs, in the core rather than bolted on
Powerful middleware system with built-in middlewares for logging, recovery, CORS, and more.
Multiple template engines: HTML, Pug, Handlebars, Django, and Amber. Full layout and partial support.
Built-in session management with multiple stores. Secure cookie handling with encryption.
Integrated logging system with multiple levels and outputs. Customizable request logger.
25,571 GitHub stars, 2,428 forks, and every line of it readable
From a single service to a large application, Iris fits a range of projects
Build high-performance REST APIs with automatic documentation, validation, and versioning.
Create scalable microservices with service discovery, load balancing, and circuit breakers.
Develop full-stack web applications with MVC architecture and session management.
Build real-time applications with WebSocket and SSE for chat, notifications, and live updates.
Install Iris and build your first application in minutes
Install Iris using go get command
go get github.com/kataras/iris/v12Write your first Iris app with just a few lines of code
Build and deploy with Go's native tooling
Install Iris with a single `go get`, and have an HTTP service answering requests in a few minutes.
Iris is an open-source HTTP/2 web framework for the Go programming language, first released in 2016. It provides an MVC architecture, dependency injection, WebSocket support through Neffos, a middleware system, sessions, and multiple template engines. Iris is licensed under BSD-3-Clause and has 25,000+ GitHub stars. It is written and maintained by Gerasimos Maropoulos at Hellenic Development.
Iris has been in continuous development since 2016 and is used in production across a range of applications, from REST APIs and microservices to full web applications. Its license, BSD-3-Clause, places no restriction on commercial use. The source and its issue history are public at github.com/kataras/iris, which is the most direct way to judge its maturity for yourself.
Iris, Gin, Echo, and Fiber are all HTTP frameworks for Go, and all four are fast enough that routing overhead is rarely what limits a real application. Iris differs mainly in scope: it ships MVC support, dependency injection, a view engine covering several template languages, and WebSocket handling in the core, where the others stay closer to a router plus middleware. If you want those pieces without assembling them, Iris carries more of the framework. If you prefer a minimal core, the others are smaller. Benchmark your own workload rather than trusting anyone's chart, including ours.
Install Iris by running `go get github.com/kataras/iris/v12@latest` from inside a Go module, then import it as `github.com/kataras/iris/v12`. Iris needs a supported Go toolchain and nothing else: no code generator, no CLI to install first, and no runtime beyond the Go binary you compile. Versioning follows the standard Go module rules, so the major version stays in the import path. The API reference is published at pkg.go.dev/github.com/kataras/iris/v12, the documentation site is iris-go.com, and the repository carries an _examples directory covering routing, MVC, sessions, and WebSocket.