# Iris Web Framework [![build status](https://img.shields.io/github/actions/workflow/status/kataras/iris/ci.yml?branch=main&style=for-the-badge)](https://github.com/kataras/iris/actions/workflows/ci.yml) [![view examples](https://img.shields.io/badge/examples%20-285-a83adf.svg?style=for-the-badge&logo=go)](https://github.com/kataras/iris/tree/main/_examples) [![chat](https://img.shields.io/gitter/room/iris_go/community.svg?color=cc2b5e&logo=gitter&style=for-the-badge)](https://gitter.im/iris_go/community) [![donate](https://img.shields.io/badge/support-Iris-blue.svg?style=for-the-badge&logo=paypal)](https://iris-go.com/donate) Iris is a fast, simple yet fully featured and very efficient web framework for Go. It provides a beautifully expressive and easy to use foundation for your next website or API. Learn what [others saying about Iris](https://www.iris-go.com/#review) and **[star](https://github.com/kataras/iris/stargazers)** this open-source project to support its potentials. [![](https://iris-go.com/images/reviews.gif)](https://iris-go.com/testimonials/) [![Benchmarks: Jul 18, 2020 at 10:46am (UTC)](https://iris-go.com/images/benchmarks.svg)](https://github.com/kataras/server-benchmarks) ```go package main import "github.com/kataras/iris/v12" func main() { app := iris.New() app.Use(iris.Compression) app.Get("/", func(ctx iris.Context) { ctx.HTML("Hello %s!", "World") }) app.Listen(":8080") } ``` As one [Go developer](https://twitter.com/dkuye/status/1532087942696554497) once said, **Iris got you covered all-round and standing strong over the years**. Some of the features Iris offers: * HTTP/2 (Push, even Embedded data) * Middleware (Accesslog, Basicauth, CORS, gRPC, Anti-Bot hCaptcha, JWT, MethodOverride, ModRevision, Monitor, PPROF, Ratelimit, Anti-Bot reCaptcha, Recovery, RequestID, Rewrite) * API Versioning * Model-View-Controller * Websockets * gRPC * Auto-HTTPS * Builtin support for ngrok to put your app on the internet, the fastest way * Unique Router with dynamic path as parameter with standard types like :uuid, :string, :int... and the ability to create your own * Compression * View Engines (HTML, Django, Handlebars, Pug/Jade and more) * Create your own File Server and host your own WebDAV server * Cache * Localization (i18n, sitemap) * Sessions * Rich Responses (HTML, Text, Markdown, XML, YAML, Binary, JSON, JSONP, Protocol Buffers, MessagePack, Content Negotiation, Streaming, Server-Sent Events and more) * Response Compression (gzip, deflate, brotli, snappy, s2) * Rich Requests (Bind URL Query, Headers, Form, Text, XML, YAML, Binary, JSON, Validation, Protocol Buffers, MessagePack and more) * Dependency Injection (MVC, Handlers, API Routers) * Testing Suite * And the most important... you get fast answers and support from the 1st day until now - that's six full years! ## πŸ‘‘ Supporters With your help, we can improve Open Source web development for everyone!

github getsentry lensesio thepunterbot EliYip geordee dph0899 keymanye marek-kuticka draFWM gf3 trading-peter AlbinoGeek basilarchia sumjoe simpleittools xiaozhuai Remydeme celsosz linxcoder TechMaster janwebdev altafino jakoubek alekperos hengestone thomasfr CetinBasoz International Juanses ansrivas ekobayong lexrus li3p madhu72 mubariz-ahmed se77en vincent-li Cesar DavidShaw sascha11110 derReineke Sirisap22 primadi agoncecelia saz59 shadowfiga siriushaha skurtz97 srinivasganti syrm tuhao1020 wahyuief xvalen xytis ElNovi KKP4 Lernakow ernestocolombo francisstephan pixelheresy rcapraro soiestad thanasolykos DanielKirkwood aprinslo1 ukitzmann colinf kyoukhana spazzymoto ArishSultan ehayun kukaki oshirokazuhide t6tg AnatolyUA AwsIT BlackHole1 FernandoLangOFC Hongjian0619 JoeD Jude-X Kartoffelbot KevinZhouRafael hobysmith th31nitiate stgrosshh rodrigoghm Didainius DmarshalTU IwateKyle Little-YangYang Major2828 MatejLach clacroix amritpal042 boomhut coderperu cshum dtrifonov iantuan ichenhe KrishManohar Laotanling njeff3 ixalender Longf99999 MihaiPopescu1985 NA icibiri jfloresremar jingtianfeng kilarusravankumar leandrobraga lfbos lpintes macropas marcmmx mark2b miguel-devs Neulhan mihado mmckeen75 NguyenPhuoc narven odas0r Oka00 RainerGevers Ramblestsad SamuelNeves Scorpio69t Serissa4000 TianJIANG Ubun1 olaf-lexemo pitexplore pr123 rsousacode sankethpb XinYoungCN YukinaMochizuki a112121788 acdias aeonsthorn agent3bood alessandromarotta algoflows angelaahhu annieruci antoniejiao artman328 b2cbd baoch254 bastengao bjoroen blackHoleNgc1277 bunnycodego carlos-enginner civicwar cnzhangquan danlanxiaohei dfaugusto dkzhang dloprodu donam-givita ec0629 edwindna2 ekofedriyanto fenriz07 ffelipelimao frenchmajesty gastropulgite geGao123 globalflea gnosthi goten002 guanzi008 hdezoscar93 hieungm hieunmg homerious hzxd iysaleh jackptoke jeremiahyan joelywz kana99 kattaprasanth keeio khasanovrs kkdaypenny knavels kohakuhubo kostasvk lafayetteDan leki75 liheyuan lingyingtan lipatti maikelcoke marman-hp mattbowen maxgozou mizzlespot mnievesco mo3lyana motogo mtrense mukunhao mulyawansentosa nasoma ngseiyu nikharsaxena nronzel onlysumitg ozfive paulxu21 pesquive phil535 pitt134 pookiepats qiepeipei qiuzhanghua rapita rbondi relaera remopavithran rfunix rhernandez-itemsoft risallaw robivictor rxrw saleebm sbenimeli sebyno seun-otosho solohiroshi su1gen sukiejosh svirmi thiennguyen93 unixedia vadgun valsorym vguhesan vpiduri vrocadev netbaalzovf oliverjosefzimmer vuhoanglam walter-wang wixregiga talebisinan valkuere CSRaghunandan lfaynman ArturWierzbicki GeorgeFourikis L-M-Sherlock Supersherm5 aaxx crashCoder derekslenk yesudeep ymonk yonson2 zhenggangpku SergeShin - BelmonduS martinjanda claudemuller martinlindhe mdamschen dochoaj edsongley evillgenius75 gog200921 evan grassshrimp hazmi-e205 jtgoral ky2s lauweliam mauricedcastro mwiater sj671 letmestudy mblandr midhubalan statik supersherm5 thejones ndimorle rosales-stephanie shyyawn vcruzato wangbl11 wofka72 xsokev oleang michalsz Curtman SridarDhandapani opusmagna b4zz4r bobmcallan fangli galois-tnp geoshan juanxme nguyentamvinhlong tejzpr theantichris tuxaanand raphael-brand willypuzzle HieuLsw carlosmoran092 yangxianglong

## πŸ“– Learning Iris ### Installation The only requirement is the [Go Programming Language](https://go.dev/dl/). #### Create a new project ```sh $ mkdir myapp $ cd myapp $ go mod init myapp $ go get github.com/kataras/iris/v12@latest # or @v12.2.0 ```
Install on existing project ```sh $ cd myapp $ go get github.com/kataras/iris/v12@latest ``` **Run** ```sh $ go mod tidy -compat=1.20 # -compat="1.20" for windows. $ go run . ```
![](https://www.iris-go.com/images/gifs/install-create-iris.gif) Iris contains extensive and thorough **[documentation](https://www.iris-go.com/docs)** making it easy to get started with the framework. For a more detailed technical documentation you can head over to our [godocs](https://pkg.go.dev/github.com/kataras/iris/v12@main). And for executable code you can always visit the [./_examples](_examples) repository's subdirectory. ### Do you like to read while traveling? Book cover [![follow author on twitter](https://img.shields.io/twitter/follow/makismaropoulos?color=3D8AA3&logoColor=3D8AA3&style=for-the-badge&logo=twitter)](https://twitter.com/intent/follow?screen_name=makismaropoulos) [![follow Iris web framework on twitter](https://img.shields.io/twitter/follow/iris_framework?color=ee7506&logoColor=ee7506&style=for-the-badge&logo=twitter)](https://twitter.com/intent/follow?screen_name=iris_framework) [![follow Iris web framework on facebook](https://img.shields.io/badge/Follow%20%40Iris.framework-569-2D88FF.svg?style=for-the-badge&logo=facebook)](https://www.facebook.com/iris.framework) You can [request](https://www.iris-go.com/#ebookDonateForm) a PDF and online access of the **Iris E-Book** (New Edition, **future v12.2.0+**) today and be participated in the development of Iris. ## πŸ™Œ Contributing We'd love to see your contribution to the Iris Web Framework! For more information about contributing to the Iris project please check the [CONTRIBUTING.md](CONTRIBUTING.md) file. [List of all Contributors](https://github.com/kataras/iris/graphs/contributors) ## πŸ›‘ Security Vulnerabilities If you discover a security vulnerability within Iris, please send an e-mail to [iris-go@outlook.com](mailto:iris-go@outlook.com). All security vulnerabilities will be promptly addressed. ## πŸ“ License This project is licensed under the [BSD 3-clause license](LICENSE), just like the Go project itself. The project name "Iris" was inspired by the Greek mythology.