Bulgarian eSports League /pronounced: Be·es·el·/. My defense project for ASP.NET Core MVC course at SoftUni (June-August 2019).
🏆 Awarded 1st place in top 5 best projects (June-August 2019).
BESL is an online eSports league for competitive tournaments on various games and formats. Everyone with a Steam account can create a team with their fellow friends and sign up for the current season tournament. Skill levels are represented by tiers and range from Open, Mid and Premiership. Match fixtures are scheduled in play weeks where teams face each other every week in order to reach the top skill table rankings.
- CQRS & MediatR
- ASP.NET Core MVC
- EF Core 2.2
- SignalR
- Fluent validation
- Custom exception-based notifications with Redis*, MediatR & ASP.NET middleware pipelines.
- Hangfire
- Sendgrid
- CloudinaryDotNet
- SteamWebApi2
- Steam.Models
- OpenId.Steam
- Shouldly
- Moq
- MockQueryable
- Coverlet
- NUKE Build System
-
Make sure you have the following app secrets set in either the 'Secret Manager' or 'Azure KeyVault' if you decide to deploy this application:
- Cloudinary:
- cloudinary-cloud
- cloudinary-apiKey
- cloudinary-apiSecret
- Steam
- steam-api-key
- SendGrid
- sendgrid-api-key
- Cloudinary:
-
Run the following docker command from the root directory of the repository to set up the necessary containers (you could also start the containers in detached mode if you want):
docker-compose -f docker-compose.Development.yml up
📌 The Web App container is build under the "Development" environment and the developer exception page is enabled. If you manage to get a HTTP 500 response you will be greeted with the stack-trace of the exception.
- To shutdown all containers used by the application run the following command from the root directory of the repository:
docker-compose -f docker-compose.Development.yml down