https://github.com/nazufel/wizter
Wizter is a demonstration application written in Go that lists wizards. The primary focus of the repo is not on the apps themselves, but tools like Telepresence and Bazel are used to develop, build, and test the applications.
https://github.com/nazufel/wizter
go kubernetes mongodb protobuff
Last synced: 5 months ago
JSON representation
Wizter is a demonstration application written in Go that lists wizards. The primary focus of the repo is not on the apps themselves, but tools like Telepresence and Bazel are used to develop, build, and test the applications.
- Host: GitHub
- URL: https://github.com/nazufel/wizter
- Owner: nazufel
- License: mit
- Created: 2021-06-04T17:44:42.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2021-09-28T03:29:20.000Z (over 4 years ago)
- Last Synced: 2024-12-18T16:33:55.655Z (over 1 year ago)
- Topics: go, kubernetes, mongodb, protobuff
- Language: Starlark
- Homepage:
- Size: 380 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Wizter
This repository holds code for various demonstrations. The list of demonstration steps and discussion can be found below in [Included Demos](#included-demos). These demonstrations use a real containerized applications with a micro services architecture and are deployed to Kubernetes. The applications components are:
* [gRPC Client](./cmd/client/main.go) - client side application for the demonstration written in Go
* [gRPC Server](./cmd/server/main.go) - service side application for the demonstration written in Go
* [MongoDB](https://docs.mongodb.com/) - database for storing state of the application
## The Applications
The demo applications are simple. They are [GRPC](https://grpc.io/docs/) apps are written in [Go](https://golang.org).
The Wizter application is a wizards listing service as defined in the [wizard.proto](./wizard/wizard.proto) file. The [client](./cmd/client/main.go) requests a list of wizards from the [server](./cmd/server/main.go). The server retrieves a list of wizards from the database and [streams](https://grpc.io/docs/what-is-grpc/core-concepts/#server-streaming-rpc) them back to the client.
*Note: The apps are meant to be a quickly written simple single file. There are obviously a lot improvements to be made and production best practices implemented. They are just single files with a main package and they import protobuf. The goal of this repo is not to write the prettiest or best tested Go programs, but to have a running application to use for the included demo steps.
## Included Demos
* [Bazel](./demos/06-29-2021-bazel.md)
* [Telepresene](./demos/06-11-2021-telepresence.md)
## Contributing
This repository is not accepting contributions.