InnoTasker (Discord Bot)

Created
Jan 23, 2024 11:26 AM
Skills
Async Programming
Service-Locator Design Pattern
Data-driven Development
Technologies
C#
.NET
Discord
notion image

My Responsibilities

  • A modular back-end using the service-locator pattern in C# .NET.
  • Storage of data using a JSON database, including support for future external databases such as Google Firebase or Supabase.
  • Discord embed messages and buttons to create an easy-to-use and responsive UI.
  • To-do lists using Discord threads for each task, where assigned team members could collaborate.
  • A list settings system to allow to-do list and permissions changes to support a wider variety of organisational pipelines.

The Story

During the development of different prototypes with a small team of friends we often tried to unify the way we track tasks and development progress, but the only consistent way of centralising this was through our Discord chats, therefore after having messed with Discord bot development recently I decided to try and create a to-do list system through a Discord bot.
 
I stumbled across Discord.NET, a wrapper for the Discord API built in C#. The central bot was built using Microsoft’s dependency injection library, allowing for services and data to be separated out. The main services I used were: a database service for data management; discord message service for managing messages and thread; a to-do list service for manipulating to-do list data from discord commands; and a settings service for managing each to-do list’s settings.
 
Built with Potion.so