Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/furkan-gulsen/nba-simulator-with-golang
The NBA Simulator is a Go-based application designed to simulate various aspects of NBA games.
https://github.com/furkan-gulsen/nba-simulator-with-golang
ddd ddd-architecture docker docker-compose domain-driven-design go go-programming golang mongodb nba-analytics nba-simulator nba-stats
Last synced: 7 days ago
JSON representation
The NBA Simulator is a Go-based application designed to simulate various aspects of NBA games.
- Host: GitHub
- URL: https://github.com/furkan-gulsen/nba-simulator-with-golang
- Owner: Furkan-Gulsen
- Created: 2023-12-16T09:34:27.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-12-19T06:20:18.000Z (about 1 year ago)
- Last Synced: 2025-01-30T07:32:27.702Z (10 days ago)
- Topics: ddd, ddd-architecture, docker, docker-compose, domain-driven-design, go, go-programming, golang, mongodb, nba-analytics, nba-simulator, nba-stats
- Language: Go
- Homepage:
- Size: 313 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NBA Simulator with Golang
The NBA Simulator is a Go-based application designed to simulate various aspects of NBA games. This project leverages modern software engineering practices to ensure ease of use, efficiency, and scalability.
## Features
- Docker Integration: Easy deployment and environment management using Docker.
- DDD: Domain Driven Design### Getting Started
These instructions will get your copy of the project up and running on your local machine for development and testing purposes.
### Prerequisites
- Go (Version 1.x or later)
- Docker (optional for containerized deployment)### Installing
To get a development environment running, follow these simple steps:
1. Clone the repository
```
git clone https://github.com/Furkan-Gulsen/NBA-Simulator-with-Golang
```2. Install dependencies
```
make install
```This command will download the necessary Go modules.
### Building and Running
- Build the application
```
make build
```This command compiles the code and creates an executable named nba_simulator.
- Run the application
```
make run
```This will build and then run the nba_simulator.
- Development Mode
```
make dev
```Use this for running the application in development mode with live reload.
### Docker Support
To run the application using Docker:
- Start the application
```
make up
```This will use docker-compose to set up and start the application.
- Stop the application
```
make down
```This will stop and remove the container set up by docker-compose.
- Cleaning Up
To clean the build artifacts and the executable:
```
make clean
```### Links
Health Check: http://localhost:3000/ping
Link: http://localhost:3000/games
![Example Page](assets/games_page.png)
### Class Diagram
![Class Diagram](assets/class_diagram.png)