This repository is an experiment in go, we'll try to create a bot that notifies of free games.
The first client connected to the API.
Get all current games from these Platforms:
- Epic Games
Used for cache and not saturate the platforms used.
We will proceed to explain the architecture of the system. We don't want to be tied to any particular technology in terms of database, client, or game platform, so the hexagonal architecture is going to be great for this.
Receive a Request and throw the command/query bus
Execute the service, should be CommandBus or QueryBus:
- CommandBus used to mutate the state of the application
- QueryBus to get values
Here is the entire business logic of the non-implementation application.
This layer is responsible to create DomainEvents and throwing them to the EventBus if needed.
$ docker-compose up
$ docker-compose up --build
$ docker run --name mongo -p 27017:27017 mongo:latest
$ docker build -t github.com/arkiant/freegames:latest .
$ docker run --name freegames github.com/arkiant/freegames:latest
$ docker-compose up -d --no-deps --build <servicename>