Skip to content

Instantly share code, notes, and snippets.

@xeoncross
Last active January 26, 2018 00:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save xeoncross/fe8910ec0eb236bc077844976832e6f0 to your computer and use it in GitHub Desktop.
Save xeoncross/fe8910ec0eb236bc077844976832e6f0 to your computer and use it in GitHub Desktop.
Go frameworks and gotchas from researching the best web frameworks and libraries for use with golang.

Golang Library Notes

Some projects have background stories, dramas, stigmas, and gotchas you might miss. All can effect the stable future of your new little app. The following is my own personal list as I explore projects listed on https://awesome-go.com/#web-frameworks

Benchamarks

FastHTTP

Alice

A tiny library for middlewares that is much like https://medium.com/@matryer/writing-middleware-in-golang-and-how-go-makes-it-so-much-fun-4375c1246e81

Negroni

Negroni is like Alice with some logging and recovery middlewares added on. It is a simpler rewrite of martini (no longer maintained) without the "magic".

Muxchain

muxchain seems to be a bloated version of Alice/Negroni that chains mux instead of http.Handler for non-obvious reasons (to me). Maybe support for path checking in middlewares?

Iris

Validation

There seem to be two thoughts about input validation, one using struct tags and one using regular written rules. Both could be used with middlewares to return a standard JSON API response format like what the google styleguide recomends.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment