https://github.com/xgracias/fizz-buzz-go
Fizz Buzz
https://github.com/xgracias/fizz-buzz-go
gin go golang
Last synced: 2 months ago
JSON representation
Fizz Buzz
- Host: GitHub
- URL: https://github.com/xgracias/fizz-buzz-go
- Owner: xgracias
- Created: 2023-03-07T01:36:12.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-13T10:12:44.000Z (over 1 year ago)
- Last Synced: 2024-11-21T15:39:28.430Z (7 months ago)
- Topics: gin, go, golang
- Language: Go
- Homepage: https://bunzz-fizz-buzz.herokuapp.com
- Size: 29.9 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Bunzz Fizz BuzzFizz Buzz API built using Golang: Gin Framework for routing, Testify for testing, Swagger for Documentation, Viper for configuration, and Go Mod for dependency management.
## 🚀 Quick start
You can use make to build/ run your app:
make build
make run## 🧐 What's inside?
A quick look at the top-level files and directories you'll see in this project.
.
├── build
├── config
├── controllers
├── docs
├── middlewares
├── server
├── tests
├── utils
├── Dockerfile
├── Makefile
├── go.mod
├── go.sum
├── main.go
├── .gitignore
└── README.md1. **`/build`**: This directory contains the binary after a build
1. **`/config`**: This directory contains the viper configration and the property files.
1. **`/controllers`**: This directory contains the controllers that the router/handlers are configured to call.
1. **`/docs`**: Directory for swagger files.
1. **`/middlewares`**: This directory is used to house the middlewares used by the controllers.
1. **`/server`**: This Directory houses the router and service files which configure the route and start the server
1. **`/tests`**: This directory contains all the tests for your application and get kicked off by:
make test
1. **`/utils`**: This directory contains all the util classes used throughout the app.
1. **`Dockerfile`**: This file contains the buildsteps to build your image using a multi stage build. It is currently using a scratch image to keep it lightweight.
1. **`Makefile`**: This file allows the use of make to run tests, build locally, and is used to build in the pipeline. This can be expanded as needed
1. **`go.mod/go.sum`**: These files are generated by Go Mod dependency management and can be learned about in the documentation link provided above.
1. **`main.go`**: This file is the starting point for the application, which starts the server.
1. **`.gitignore`**: This file tells git which files it should not track / not maintain a version history for.
1. **`README.md`**: A text file containing useful reference information about your project.