{"repo":"gmhafiz/go8","free":true,"listed":false,"github":"https://github.com/gmhafiz/go8","clone":"git clone https://github.com/gmhafiz/go8.git","description":"Go + Postgres + Chi Router + sqlx + ent + authentication + testing + opentelemetry Starter Kit for API Development","language":"Go","stars":501,"topics":["go","api","starter-kit","golang","unit-test","ent","authentication","e2e-testing","integration-testing","opentelemetry"],"license":null,"category":"saas-starters-boilerplates","readme_excerpt":"Introduction ., /(#####(/ ,. ., ((###(/ . . (%%%%%%%%%%%%%%#/. . #%%%%####%%%%#/. ./#%%%%#(/,,...,, . ....... #%%%# . ,(%%%#/. .(#%%%#/. . (#%%%%%%%##/,. ,(%%%# ,(%%%# . . #%%%#/. .......... . #%%%%#(/((#%%%%(, ,/#%%%#(/#%%%#(, ./#%%%( ,#%%%%%%%%( . #%%%# . #%%%#, (%%%%%%%#(,. ./#%%%# ,(((##%%%%( ,/%%%%/. .(%%%#/ . #%%%#( /(#%%%#/, ,#%%%#(. ,#%%%( ,/%%%%/. .(%%%#/ ,/%%%#/. . #%%%(, #%%%%( . ,#%%%( . #%%%# ./#%%%#, ,(%%%# .(%%%# ,(#%%%%%##(((##%%%%( . #%%%%#(((##%%%%(, . #%%%##(///(#%%%#/. . /###%%%%%%%###(/, .,/##%%%%%##(/,. . (##%%%%%%##( , ......... ...... ....... A starter kit for Go API development. Inspired by How I write HTTP services after eight years. However, I wanted to use chi router which is more common in the community, sqlx for database operations and design towards layered architecture (handler - business logic - database). In short, this kit is a Go + Postgres + Chi Router + sqlx + ent + authentication + testing starter kit for API development. Motivation On the topic of API development, there are two opposing camps between using framework (like echo, gin, buffalo) and starting small and only adding features you need through various libraries. However, the second option isn't that straightforward. you will want to structure your project in such a way that there are clear separation of functionalities for your controller, business logic and database operations. Dependencies need to be injected from outside to inside. Being modular, swapping a library like a rou","default_branch":null,"files":null,"tree":[],"storefront":"/r/gmhafiz","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/gmhafiz/go8/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}