https://github.com/zenithar/go-spotigraph
Spotify Agile model mapping microservice
https://github.com/zenithar/go-spotigraph
agile chapter clean-architecture decorators golang graph guild magefile microservice monorepo rethinkdb spotify squad test-driven-development tribe wire
Last synced: 2 months ago
JSON representation
Spotify Agile model mapping microservice
- Host: GitHub
- URL: https://github.com/zenithar/go-spotigraph
- Owner: Zenithar
- License: other
- Created: 2019-03-05T20:51:13.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2022-03-15T19:15:15.000Z (about 4 years ago)
- Last Synced: 2024-06-21T09:35:02.856Z (almost 2 years ago)
- Topics: agile, chapter, clean-architecture, decorators, golang, graph, guild, magefile, microservice, monorepo, rethinkdb, spotify, squad, test-driven-development, tribe, wire
- Language: Go
- Size: 1.51 MB
- Stars: 22
- Watchers: 4
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# go-spotigraph
[](https://goreportcard.com/report/github.com/Zenithar/go-spotigraph)
[](https://circleci.com/gh/Zenithar/go-spotigraph)
[](https://github.com/Zenithar/go-spotigraph/blob/master/LICENSE)
[](https://app.fossa.com/projects/git%2Bgithub.com%2FZenithar%2Fgo-spotigraph?ref=badge_shield)
Spotify Agile model mapping microservice
## Build
```sh
> go run .circleci/mage.go
```
## Todo
### Project
- [x] Golang project best practice
- [x] Go modules
- [x] Go tools vendoring
- [x] Magefile migration
- [x] Feature flags support
- [x] Wire code generation
- [x] CircleCI integration
- [ ] Documentation
### Services
- [x] Identity management
- [x] Squad management
- [x] Chapter management
- [x] Guild management
- [x] Tribe management
- [ ] Graph query
- [ ] External identity resolver (LDAP, etc.)
### Code generation
- [x] Protocol Validator generation
- [x] gRpc Client code generation
- [x] Decorator generation
- [x] CLI command generation from protobuf
- [x] Local or Remote service abstraction (direct vs gRPC call)
### Database
- [x] RethinkDB support
- [x] MongoDB support
- [x] PostgreSQL support
- [x] PostgreSQL json column support
- [ ] BoltDB backend study
- [ ] DGraph backend study
- [ ] DynamoDB backend study
### Dispatchers
- [x] gRPC Server
- [x] GraphQL Server
- [x] REST Api
### Decorators
- [x] Code generation
- [x] Cache support
- [x] Logger support
- [x] Tracing support
- [x] Metric support
- [x] OpenCensus support
- [x] Instrumented service providers for wire
- [x] Circuit breaker
- [ ] Authorization
### Tests
- [x] Unit tests template
- [ ] Integration tests
- [ ] E2E tests
### Deployment
- [x] Multi Stage Build for Docker
- [ ] Kubernetes manifest
- [ ] Test on K3S