An open API service indexing awesome lists of open source software.

https://github.com/yassir-ai/codename

This project implements a microservices architecture to manage the Codename game. Players can create and join game sessions while managing their profile information.
https://github.com/yassir-ai/codename

asp-net-core csharp dotnet entity-framework-core microservice microservices-architecture

Last synced: 8 months ago
JSON representation

This project implements a microservices architecture to manage the Codename game. Players can create and join game sessions while managing their profile information.

Awesome Lists containing this project

README

          

# Codename

This project implements a microservices architecture to manage the **Codename** game. Players can create and join game sessions while managing their profile information.

## πŸ“– Project Description

The application is structured around two independent microservices:
- **User Service**: Handles the management of player profiles.
- **Session Service**: Manages the creation, joining, and handling of game sessions.

In the future, more services will be added, but they are not implemented yet.

---

## βš™οΈ Architecture
The services are designed to be independent and communicate via RabbitMQ.

- **User Service**: Responsible for managing player profiles.
- **Session Service**: Responsible for managing game sessions.

![architecture_schema.png](./architecture_schema.png)

---

## πŸ“‚ Project Structure
```plaintext
codename/
β”‚
β”œβ”€β”€ UserService/ # User Service
β”‚ β”œβ”€β”€ Controllers/ # REST Endpoints
β”‚ β”œβ”€β”€ Models/ # Data Models
β”‚ β”œβ”€β”€ Services/ # Business Logic
β”‚
β”œβ”€β”€ SessionService/ # Session Service
β”‚ β”œβ”€β”€ Controllers/ # REST Endpoints
β”‚ β”œβ”€β”€ Models/ # Data Models
β”‚ β”œβ”€β”€ Services/ # Business Logic
β”‚
└── README.md # Documentation
```

---

## πŸ’» Technologies Used
- **Backend**: .NET 8
- **Messaging**: RabbitMQ
- **Database**: In-memory database for now (to be replaced in the future)

---

## πŸ™ Acknowledgment

This Codename Project is inspired by the original **Codenames** board game designed by Vlaada ChvΓ‘til and published by **Czech Games Edition (CGE)**. We acknowledge and appreciate the creativity and design of the original game, which has provided the foundation for our digital implementation.

This project is a learning initiative and is not affiliated with or endorsed by Czech Games Edition.