Skip to content

Discord Clash is a distributed application written in .NET. An event management system, with Discord bot to control the application and a recommendation system to help users to know about new events for them.

Notifications You must be signed in to change notification settings

jurczewski/Discord-Clash

Repository files navigation

Discord Clash Build

Discord Clash is a distributed application written in .NET. An event management system, with Discord bot to control the application and a recommendation system to help users to know about new events for them.

Authors

Tech Stack

  • .NET 5.0 with in C#,
  • RabbitMQ with EasyNetQ library,
  • MongoDB - for storing users and events,
  • Discord.Net - .NET API, wrapper for the Discord client,
  • Cocona - micro-framework for .NET Core console application.

Other used libs: Figgle, Refit, Serilog, Swashbuckle (Swagger).

Architecture

Components diagram Generated using PlantUML, source files are placed in diagrams.

Run Locally

Clone the project:

  git clone https://github.com/jurczewski/Discord-Clash

Go to the project directory and start infrastructure using Docker (MongoDB and RabbitMQ):

  cd Discord-Clash
  docker-compose up

Go to API directory and run:

  cd src/Apps/DiscordClash.API
  dotnet run

To see available endpoints go to localhost:5001/swagger or use files inside request directory. To use them install a VS Code Rest Client.

Bot

Before running a bot you need to enter your bot token and channel id for notifications in appsettings.json.

After that, go to Bot directory and run:

  cd src/Apps/DiscordClash.Bot
  dotnet run

About

Discord Clash is a distributed application written in .NET. An event management system, with Discord bot to control the application and a recommendation system to help users to know about new events for them.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published