The current solution for editing cog settings is through either the web-panel or using $config which runs through configurator.py.
This current solution, although working, is really bloated and non-modular. If we wanted to quickly add a new config, we would first have to create the settings and then write code similar to what is already in configurator.py (creating the new embed and logic to manipulate the config variables, breaking DRY principles.
Proposed Solution
A modular solution, in which we could do the following:
Using this solution means that all logic to do with the cog is stored in that cog. There would be no need for an external config cog that has to check if the cog is loaded and so on. It also means one less file to manipulate during the modification of cogs.
Feature Description
The current solution for editing cog settings is through either the web-panel or using $config which runs through configurator.py.
This current solution, although working, is really bloated and non-modular. If we wanted to quickly add a new config, we would first have to create the settings and then write code similar to what is already in configurator.py (creating the new embed and logic to manipulate the config variables, breaking DRY principles.
Proposed Solution
A modular solution, in which we could do the following:
example_cog.py
Aditional Context
Using this solution means that all logic to do with the cog is stored in that cog. There would be no need for an external config cog that has to check if the cog is loaded and so on. It also means one less file to manipulate during the modification of cogs.