A simple to-do list app written in GoLang with Redis as a backend showing a few GoLang features.
- [✅] Redis as a backend
- [✅] Gorilla as a router
- [✅] GoLang as a language
- [✅] Git as a version control system
- [✅] Travis CI as a continuous integration system
- [✅] Coveralls as a code coverage system for Travis CI
- Using the following features to handle concurrency & application lifecycle:
- Using goroutine
- Using sync.WaitGroup
- Using sync.Mutex
- Using channel
- Using the following features to handle HTTP requests:
- Using http.Handler
- Using http.HandlerFunc
- Using http.Server
- Using http.ListenAndServe
- Using the testing suite to test the app and provide coverage reports
- Using the gopkg.in/yaml.v2 package to parse the YAML config file
- Using the [github.com/go-redis/redis] as a Redis client
- Using docker to deploy the app
To install the app, run the following command:
To run the app, run the following command:
go run main.go
To see the coverage report, run the following command:
go tool cover -html=coverage.out