robertwayne / dpymenus

Simplified menus for discord.py developers.
https://dpymenus.com/
MIT License
26 stars 4 forks source link

v2 Milestone Goals #32

Closed robertwayne closed 3 years ago

robertwayne commented 3 years ago

This is a living document to provide a basic overview of v2 features. After a nice end-of-year break, I'm going to work on cleaning up a lot of current code and implementing some features that have been on the table for a while. In addition, I will finally finish the documentation overhaul.

If anyone has any requests, feel free to leave them below and I will ascertain their value and place in the library.

Templates Allow users to define a template which acts as the base layer for constructing pages. This reduces code by letting you define colors, footers, etc across the entire menu.

Event Hooks Allow users to hook into events and run their own functions before or after the menu function runs. Need more testing on the preferred way to implement this. Will update later.

Hooks: OPEN, CLOSE, SESSION_ADD, SESSION_REMOVE, UPDATE, FAIL, TIMEOUT, CANCEL API: @before, @after

~~Sourced Pagination Allow users to define a source (ie. JSON data) and dynamically construct pages from it based on a template. Users should be able to map JSON keys to Embed attributes. Pages should be aware of discord character limits and handle it gracefully.~~

~~MultipleChoiceMenu New button menu that simplifies the creation of menus with multiple choices. Takes a lot of the boilerplate out of using a ButtonMenu and dynamically generates the menu behind the scenes..~~

Some thoughts: should take a list of items, can define list styles (ABC, 123, ---, ***), returns a choice value, constructs pages per item, map choices to pages or chained menus.

Misc Features

Documentation