Chisk - (go-chi starter kit), is a starter kit for building RESTful APIs using Golang stdlib only (with 3rd party libs being used for integrations, e.g. Redis, PostgreSQL).
It features only structured package management, middleware and reusable packages - READ WHY.
Chisk's project structure mostly follows THIS example repository.
-
Create a new directory inside
/internal/
named after your domain, e.g. team. Inside it, create a file namedteam.go
that will hold your main application service code (CRUD). Other application service code should be located in the same directory/package, named after its usage. -
Directory
/internal/team/platform/
contains platform integrations, e.g. redis, postgresql, email, sms etc. -
Directory transport contains http handlers, binders, request/response models, swagger annotations and other transport related code.
-
Wire up new service inside cmd/
service_name
/main.go, or use a single service ('monolith') likeapi
.
chisk is licensed under the MIT license. Check the LICENSE file for details.