go-chi / chi

lightweight, idiomatic and composable router for building Go HTTP services

Home Page:https://go-chi.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hi all, who's using chi in production?

pkieltyka opened this issue · comments

Hey everyone, I'm curious to hear which companies are using chi in production, if you see this post and use it in your products, please let me know. I'd like to include a list in the README, it's inspiring to hear all the awesome companies using chi and it helps other get comfortable to adopt it with success from others.

Pressly.com is of course using chi :)

cc`ing a few contributors and devs I spoke with previously: @cyx @ustrajunior @vektah @xiam @kanocz @november-eleven @mrcpvn @elithrar @ChrisHines @lxfontes @lwc @abh1nav

if you guys have some feedback please let me know as I prepare a blog post about chi and how to write RESTful services in Go.

I'm using it in few project for the moment... only one (very small, https://github.com/kanocz/minisv) is open source and public, but used on about 20 servers :)

commented

Cloudflare are using it within a helper package that wraps internal JSON REST services.

Heroku is about to use it -- the branch we have is still being tested in a sandbox

99designs uses it as a router in front of our app servers.

On 5 Oct. 2016 18:50, "Cyril David" notifications@github.com wrote:

Heroku is about to use it -- the branch we have is still being tested in a
sandbox


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#91 (comment), or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACJNLkYPj9AFSwkmEkZ6PjjcIWJXH0i5ks5qw9VtgaJpZM4KO0AL
.

We, Origami Inc., uses it for our new API server(actually, it is not released yet but coming soon).

IT Jobs Watch uses it for internal applications.

if non-open-source project also "accepted" than we use it for part of REST (and also non-REST) API for https://homebeat.live (HomeBeat.Live GmbH)

thanks everyone for letting us know :) this is great and makes us want to make chi even better

commented

Call levels use it in one of our internal applications. Might plan to use it for our new API server.

@pkieltyka CrowdRiff uses it for ~80% of our internal services as well as powering our public API 👍

I'm using chi for a new project, nothing live yet though.

I'm using on https://github.com/ustrajunior/minion and working on a big refactor that will be using chi through minion.

commented

pocketmath.com is using chi for some internal apps. keep up the good work!

wondering, if there is somebody using chi in combination with authboss ( https://github.com/go-authboss/authboss ) ?

coldfunction is using chi as the only HTTP router behind nginx, all our code is written in Go.

QingCloud is using pressly/chi in some of our internal services.

We are using chi for our shop platform & API on https://platform.boxzillaplugin.com. Nothing too crazy, about 80 routes total. Also running behind NGINX.

We are using at @hellofresh as well cc/ @italolelis

Janus Gateway is also using it: https://github.com/hellofresh/janus/blob/master/Gopkg.toml#L43
This is the gateway that powers the @hellofresh architecture.

Betalo is using it for all its backend services.

Example for QOR SDK just moved from Gin to Chi

commented

Autohome Inc. using it for the API server.

commented

Hi. I'm using chi in my web framework https://github.com/alehano/gobootstrap

We're using chi at Abot for our website and our back-end dashboard/APIs. https://www.abotlabs.com

We are using chi at Justickets in a couple of services.

commented

we are using it at https://moreless.io as App Tide 's backend.

@chenjie4255 Your app is awesome, I have using it to focus on my work!

Using it for a BI tool soon going in prod.

The selling points of Chi was it's simplicity; doing what it's supposed to do good by focusing on usability and functionality instead of bragging about performance

Using it for a cryptocurrency payment service.

Works really nicely, especially the scoping of routes with Group and the ability to add custom middleware to a particular group. Allows me to be very expressive with my route definitions.

Can't achieve this with Gin, for instance. At least not the last time I used it, which is why I made the move to Chi.

Netlify is using it at https://github.com/netlify/gotrue

(I am not affiliated with Netlify)

Render is using it in production for everything: https://render.com

Using the package for several micro services at Pathao Limited

A bunch of microservices at mbc.net

Fly365.com for all web services :)

Hi @pkieltyka

This comment extends from #501 #501 (comment)
The question is mainly to ask where test coverage is, but you don't answer. If you are available, please share with me. Thanks.

About the library choice of decision for me, I have no big question about this.
This library has provided a completed introduction.

Individually, I like it's made by std lib, no syntactic sugar. However, it means that it doesn't need to learn specified knowledge or method from some libraries. The main operation method can refer to the official site. So, I plan to introduce my colleagues who are no Golang experience and I hope that they won't learn much tricky skills when learning Golang.


About benchmark rank, it's from techempower round 18

If you wouldn't click the link, I have attached a file as below:
image

The Golang version is 1.12. I think if use 1.14, I believe the official Golang team is evolving the standard libraries and it will perform better.

@TonyPythoneer thanks for sharing those benchmarks -- glad to see chi reaching for the top of the list in real-world`ish tests :)

as for test coverage, the router trie is covered extensively in tree_test.go and the mux is covered in mux_test.go -- I think you can see from how few bug reports and how little the code changes the project is quite robust. Feel free to run a code coverage tool to figure out the % of surface area of test coverage. Test coverage % however does not represent the true integrity of a project, as its easy to cover an area of code but miss all of the deep edge cases in the argument space, and this is where tree_test and mux_test go deep. The middlewares could use more test cases for sure, happy to accept PRs from the community. But middlewares gain a lot of use through all the infrastructure in my own professional projects, as well from hundreds (thousands?) of other companies -- so I think you're safer than most projects out there.

Malwarebytes is using Chi for internal APIs.

@pkieltyka Maybe a ADOPTERS.md file will be better for reference.

Code Golf is using it after switching from julienschmidt/httprouter so that parameters could overlap with literal slugs e.g.

r.Get("/{hole}", routes.Hole)
r.Get("/about", routes.About)

We used chi when I was at Uber, on the storage platform team, for internal infrastructure tools.

Somebody could tell me how can I deploy my application made with chi?

@luisfelipesdn12 I think that this question could be another issue.

commented

gitea A painless, self-hosted Git service.

(since v1.14.0)

We at Nuxify use Chi in all our production API services. I really love that its 100% compatible with the stdlib net/http. Just straightforward implementation.

Some of our production apps that are served with Chi:

https://login.primuslms.com
https://nuximart.com

Thank you for the great product! We use it in our internal services
https://www.exness.com

I use it for API endpoints running my developer job boards (multi-tenant, running all on the same instance):
Fullstack Job Board
Python Jobs
Javascript Jobs
Rust Jobs
React Jobs
and of course:
Golang Jobs

Retailpulse (www.retailpulse.ai) is using it to serve REST and GraphQL endpoints.

Use it for the backend of React Jobs

commented

Use it for the blockchain based voting platform https://vocdoni.io (github.com/vocdoni/vocdoni-node)

Use it extensively at https://factlylabs.com/

commented

we've been using v5 in many of our projects.

publicly, it currently is hosting some more complicated routes/applications at https://analytics.gfx.xyz (https://gfx.cafe/ip/go) and https://etherlands.com, along with a myriad of static sites, ala https://interestprotocol.io. It's been a great experience!

the middleware pattern is easy to teach and incredibly powerful - incredibly grateful for the work and thought put into it.

Hetki.ai uses chi in middleware services that handle voice bots and voice transcribe.

mas3.co uses chi in the internal projects. Your project is amazing!

I use chi on Google App Engine for https://github.com/Baralga/baralga-app. Running smooth and stable.👍🤩

Use it as backend internal API on Indonesia's Crowdfunding Platform https:/kitabisa.com

Thanks for the great project, it is used in https://github.com/maxisam/mgob

We use Chi for the pirsch.io API and website :)

Pressly.com

the site is not even live

https://www.pressly.com was acquired by https://alida.com ;) Chi is still used there in multiple products in production.

Chi is also used by
https://sequence.xyz
https://sequence.build
https://horizon.io
https://www.skyweaver.net

Our whole website https://namenumber.net is built on top of it.