Add NewHelpMenu v1.0.0 — fully customisable interactive help system
1,573-line cog with total configurability over every aspect: Layouts: 6 category layouts (fields/description/inline/numbered/table), 3 home layouts (list/grid/minimal), configurable columns (1-3) Themes: 4 built-in (default/minimal/compact/dark) + full custom mode Navigation: 4 nav styles (full/compact/arrows_only/select_only), select menu dropdown, button navigation, pagination Button customisation: every button label, emoji, and style is configurable (home/prev/next/search/favourites/close) Categories: unlimited custom categories with emoji, colour, thumbnail, image, description, ordering, role-gating, hide/unhide Visibility: hide cogs, hide commands, role-gated categories, permission-based filtering Extras: modal search, per-user favourites, quick-link URL buttons, custom home fields, DM help, ephemeral mode, auto-delete, embed author, tagline, export config, command detail views 70+ admin commands across 10+ command groups.
This commit is contained in:
parent
680b87db39
commit
adf9e0f9d5
5 changed files with 1847 additions and 10 deletions
239
README.md
239
README.md
|
|
@ -6,10 +6,225 @@ A premium cog repository for [Red-DiscordBot](https://github.com/Cog-Creators/Re
|
|||
|
||||
```
|
||||
[p]repo add EveCogs https://github.com/everestmcarthur/EveCogs
|
||||
[p]cog install EveCogs wormhole
|
||||
[p]load wormhole
|
||||
[p]cog install EveCogs <cog_name>
|
||||
[p]load <cog_name>
|
||||
```
|
||||
|
||||
### Available Cogs
|
||||
|
||||
| Cog | Description |
|
||||
|-----|-------------|
|
||||
| **[Wormhole](#-wormhole-v320)** | Ultimate cross-server message relay — DM relay, starboard, karma, auto-mod, 50+ commands |
|
||||
| **[NewHelpMenu](#-new-help-menu-v100)** | Fully customisable interactive help system — categories, buttons, themes, search, favourites |
|
||||
|
||||
---
|
||||
|
||||
# 📖 New Help Menu v1.0.0
|
||||
|
||||
**The ultimate customisable help system for Red-DiscordBot.**
|
||||
|
||||
Completely replaces Red's default help formatter with a modern, interactive experience powered by Discord buttons, select menus, modals, and rich embeds. Every aspect is configurable — from categories and colours to button styles and role gating.
|
||||
|
||||
## ✨ Features
|
||||
|
||||
### 🎨 Themes & Branding
|
||||
- **4 built-in themes** — `default`, `minimal`, `compact`, `dark`
|
||||
- **Full custom mode** — control every visual aspect independently
|
||||
- **Custom accent colours** — per-server or per-category
|
||||
- **Thumbnails & images** — custom icons on home page and per-category
|
||||
- **Title, description, tagline, footer** — fully templated with `{bot_name}` and `{prefix}` placeholders
|
||||
- **Footer icons** — custom footer branding
|
||||
|
||||
### 📂 Custom Categories
|
||||
- **Create unlimited categories** — group cogs however you want
|
||||
- **Per-category customisation** — emoji, colour, thumbnail, image, description
|
||||
- **Ordering** — set display order for each category
|
||||
- **Role gating** — restrict category visibility to specific roles
|
||||
- **Hide/unhide** — toggle category visibility
|
||||
- **Auto-categories** — uncategorised cogs get their own section automatically
|
||||
- **Rename** — change category labels on the fly
|
||||
|
||||
### 🔘 Interactive Navigation
|
||||
- **Select menu dropdown** — jump between categories instantly
|
||||
- **Button navigation** — category buttons when select menus are disabled
|
||||
- **Pagination** — ◀️ ▶️ buttons with page counter
|
||||
- **Command detail view** — click into any command for full docs, subcommands, aliases
|
||||
- **Back navigation** — return to previous views seamlessly
|
||||
- **Close button** — dismiss the menu
|
||||
|
||||
### 🔍 Search
|
||||
- **Modal search** — pop-up search dialog searches command names, descriptions, aliases, and help text
|
||||
- **Results view** — shows matching commands with their category
|
||||
- **Fuzzy matching** — finds commands across all categories
|
||||
|
||||
### ⭐ Favourites
|
||||
- **Per-user favourites** — save frequently-used commands
|
||||
- **Star button** — add/remove favourites from the detail view
|
||||
- **Favourites page** — quick access from the main menu
|
||||
- **Command-based** — `[p]fav <command>` to toggle
|
||||
|
||||
### 🛡️ Visibility Control
|
||||
- **Hide cogs** — remove entire cogs from help
|
||||
- **Hide commands** — blacklist specific commands
|
||||
- **Show hidden** — toggle visibility of hidden commands for admins
|
||||
- **Permission-based filtering** — only shows commands the user can actually run
|
||||
- **Role-gated categories** — restrict categories to certain roles
|
||||
|
||||
### ⚙️ Display Options
|
||||
- **Aliases** — show/hide command aliases
|
||||
- **Cooldowns** — show/hide cooldown info
|
||||
- **Permissions** — show/hide required permission levels
|
||||
- **Signatures** — show/hide command usage signatures
|
||||
- **Timestamps** — toggle embed timestamps
|
||||
- **Subcommand counts** — groups show number of subcommands
|
||||
|
||||
### 🔗 Quick Links
|
||||
- **URL buttons** — add up to 5 link buttons (support server, docs, website, etc.)
|
||||
- **Custom emoji** — set emoji per link button
|
||||
|
||||
### 📧 Delivery Options
|
||||
- **DM help** — send help to DMs instead of the channel
|
||||
- **Ephemeral mode** — only visible to the user (slash command contexts)
|
||||
- **Auto-delete** — delete help messages after configurable seconds
|
||||
- **Timeout** — interactive view timeout (default 3 minutes)
|
||||
|
||||
### 🏠 Home Page Extras
|
||||
- **Custom fields** — add informational fields to the home embed
|
||||
- **Home image** — large image on the home page
|
||||
- **Category overview** — shows all categories with command counts
|
||||
|
||||
## 📋 Quick Start
|
||||
|
||||
```
|
||||
[p]cog install EveCogs newhelpmenu
|
||||
[p]load newhelpmenu
|
||||
```
|
||||
|
||||
That's it! The default help command is now interactive. Customise further:
|
||||
|
||||
```
|
||||
[p]helpmenu theme dark
|
||||
[p]helpmenu colour #FF6B6B
|
||||
[p]helpmenu title "🤖 {bot_name} Commands"
|
||||
[p]helpmenu desc "Use the menu below to browse all commands!"
|
||||
[p]helpmenu tagline "Powered by EveCogs"
|
||||
|
||||
[p]helpmenu cat create Moderation 🛡️ All moderation commands
|
||||
[p]helpmenu cat addcog Moderation Mod
|
||||
[p]helpmenu cat addcog Moderation AutoMod
|
||||
[p]helpmenu cat colour Moderation #E74C3C
|
||||
|
||||
[p]helpmenu cat create Fun 🎮 Games and entertainment
|
||||
[p]helpmenu cat addcog Fun Trivia
|
||||
[p]helpmenu cat addcog Fun CustomCommands
|
||||
|
||||
[p]helpmenu quicklink add "Support" https://discord.gg/your-server 🔗
|
||||
[p]helpmenu quicklink add "Docs" https://your-docs-site.com 📄
|
||||
|
||||
[p]helpmenu set selectmenu on
|
||||
[p]helpmenu set buttons on
|
||||
[p]helpmenu set aliases on
|
||||
[p]helpmenu set dmhelp off
|
||||
[p]helpmenu set maxperpage 10
|
||||
|
||||
[p]helpmenu preview
|
||||
```
|
||||
|
||||
## 📖 Command Reference
|
||||
|
||||
### Main Settings (`[p]helpmenu` / `[p]hm`)
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `helpmenu toggle` | Enable/disable the custom help menu |
|
||||
| `helpmenu theme <name>` | Set theme: default, minimal, compact, dark, custom |
|
||||
| `helpmenu colour <hex>` | Set accent colour |
|
||||
| `helpmenu resetcolour` | Reset to bot default colour |
|
||||
| `helpmenu thumbnail [url]` | Set/reset home thumbnail |
|
||||
| `helpmenu title <text>` | Set title (supports `{bot_name}`, `{prefix}`) |
|
||||
| `helpmenu description <text>` | Set home description |
|
||||
| `helpmenu footer <text>` | Set footer text |
|
||||
| `helpmenu footericon [url]` | Set footer icon |
|
||||
| `helpmenu tagline [text]` | Set/clear tagline |
|
||||
| `helpmenu homeimage [url]` | Set/reset home page image |
|
||||
| `helpmenu buttonstyle <style>` | Set button style: primary, secondary, success, danger |
|
||||
| `helpmenu pagestyle <style>` | Set pagination button style |
|
||||
| `helpmenu uncatlabel <text>` | Set uncategorised section label |
|
||||
| `helpmenu uncatdesc <text>` | Set uncategorised description |
|
||||
| `helpmenu hideuncat` | Toggle hiding uncategorised section |
|
||||
| `helpmenu preview` | Preview the help menu |
|
||||
| `helpmenu settings` | Show all current settings |
|
||||
| `helpmenu reset` | Reset everything to defaults |
|
||||
|
||||
### Toggle Settings (`[p]helpmenu set`)
|
||||
| Setting | Description |
|
||||
|---------|-------------|
|
||||
| `aliases` | Show/hide command aliases |
|
||||
| `cooldown` | Show/hide cooldown info |
|
||||
| `permissions` | Show/hide required permissions |
|
||||
| `signature` | Show/hide command signatures |
|
||||
| `hidden` | Show/hide hidden commands |
|
||||
| `timestamp` | Show/hide embed timestamps |
|
||||
| `selectmenu` | Enable/disable select menu dropdown |
|
||||
| `buttons` | Enable/disable category buttons |
|
||||
| `dmhelp` | Send help to DMs |
|
||||
| `ephemeral` | Ephemeral responses (slash commands) |
|
||||
| `favourites` | Enable/disable favourites system |
|
||||
| `search` | Enable/disable search |
|
||||
| `sortcommands` | Sort commands alphabetically |
|
||||
| `sortcategories` | Sort categories by order |
|
||||
| `timeout` | View timeout in seconds (number) |
|
||||
| `deleteafter` | Auto-delete after seconds (number, 0=never) |
|
||||
| `maxperpage` | Commands per page (number) |
|
||||
|
||||
### Categories (`[p]helpmenu category` / `[p]hm cat`)
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `cat create <name> [emoji] [desc]` | Create a new category |
|
||||
| `cat delete <name>` | Delete a category |
|
||||
| `cat rename <old> <new>` | Rename a category |
|
||||
| `cat emoji <name> [emoji]` | Set/clear category emoji |
|
||||
| `cat description <name> [desc]` | Set category description |
|
||||
| `cat colour <name> <hex>` | Set category embed colour |
|
||||
| `cat thumbnail <name> [url]` | Set category thumbnail |
|
||||
| `cat image <name> [url]` | Set category large image |
|
||||
| `cat order <name> <number>` | Set display order (lower = first) |
|
||||
| `cat hide <name>` | Hide a category |
|
||||
| `cat unhide <name>` | Show a hidden category |
|
||||
| `cat requirerole <name> [role]` | Set/clear role requirement |
|
||||
| `cat addcog <name> <CogName>` | Assign a cog to a category |
|
||||
| `cat removecog <name> <CogName>` | Remove a cog from a category |
|
||||
| `cat list` | List all categories |
|
||||
|
||||
### Visibility (`[p]helpmenu hide` / `unhide`)
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `hide cog <CogName>` | Hide a cog from help |
|
||||
| `hide command <name>` | Hide a command from help |
|
||||
| `unhide cog <CogName>` | Unhide a cog |
|
||||
| `unhide command <name>` | Unhide a command |
|
||||
| `hide list` | List all hidden items |
|
||||
|
||||
### Quick Links (`[p]helpmenu quicklink` / `ql`)
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `ql add <label> <url> [emoji]` | Add a quick link button |
|
||||
| `ql remove <label>` | Remove a quick link |
|
||||
| `ql list` | List all quick links |
|
||||
|
||||
### Home Fields (`[p]helpmenu field`)
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `field add <name> <value>` | Add a field (append `--inline` for inline) |
|
||||
| `field remove <name>` | Remove a field |
|
||||
| `field clear` | Clear all fields |
|
||||
| `field list` | List all fields |
|
||||
|
||||
### User Commands
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `[p]favourite <command>` | Toggle a command in your favourites |
|
||||
| `[p]favourites` | View your favourite commands |
|
||||
|
||||
---
|
||||
|
||||
# 🌀 Wormhole v3.2.0
|
||||
|
|
@ -143,7 +358,7 @@ Connect channels across multiple servers into named networks. Messages, edits, d
|
|||
|
||||
## 📖 Command Reference
|
||||
|
||||
Run `[p]wh help` in Discord for the full interactive reference (3-page embed).
|
||||
Run `[p]wh help` in Discord for the full interactive reference.
|
||||
|
||||
### Network Management
|
||||
| Command | Description |
|
||||
|
|
@ -199,18 +414,24 @@ Run `[p]wh help` in Discord for the full interactive reference (3-page embed).
|
|||
| **Profiles** | `wh profile <name> [@user]` |
|
||||
| **Global** | `wh global ban-user/unban-user/ban-server/unban-server/list` |
|
||||
|
||||
## 📊 Architecture
|
||||
---
|
||||
|
||||
## 📊 Repository Structure
|
||||
|
||||
```
|
||||
EveCogs/
|
||||
├── README.md
|
||||
├── LICENSE (MIT)
|
||||
├── info.json (repo metadata)
|
||||
└── wormhole/
|
||||
├── __init__.py (cog loader + data statement)
|
||||
├── info.json (cog metadata)
|
||||
├── utils.py (helpers, embeds, detectors, filters)
|
||||
└── wormhole.py (main cog — 2,200+ lines, 50+ commands)
|
||||
├── wormhole/
|
||||
│ ├── __init__.py
|
||||
│ ├── info.json
|
||||
│ ├── utils.py
|
||||
│ └── wormhole.py (2,200+ lines, 50+ commands)
|
||||
└── newhelpmenu/
|
||||
├── __init__.py
|
||||
├── info.json
|
||||
└── newhelpmenu.py (1,100+ lines, 50+ commands)
|
||||
```
|
||||
|
||||
## 📄 License
|
||||
|
|
|
|||
|
|
@ -3,6 +3,6 @@
|
|||
"install_msg": "Welcome to **EveCogs**! Use `[p]cog list` to see available cogs.",
|
||||
"name": "EveCogs",
|
||||
"short": "A collection of advanced cogs for Red-DiscordBot.",
|
||||
"description": "EveCogs is a premium cog repository featuring Wormhole — the ultimate cross-server relay system with DM relay, starboard, karma, auto-moderation, invites, portals, and 50+ commands.",
|
||||
"description": "EveCogs is a premium cog repository featuring Wormhole — the ultimate cross-server relay system, and New Help Menu — a fully customisable interactive help system with categories, buttons, select menus, themes, search, and favourites.",
|
||||
"type": "REPO"
|
||||
}
|
||||
|
|
|
|||
13
newhelpmenu/__init__.py
Normal file
13
newhelpmenu/__init__.py
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
"""New Help Menu — Fully customisable interactive help system for Red-DiscordBot."""
|
||||
|
||||
from .newhelpmenu import NewHelpMenu
|
||||
|
||||
__red_end_user_data_statement__ = (
|
||||
"This cog stores Discord user IDs and guild IDs for per-user favourite commands "
|
||||
"and per-guild help menu configuration."
|
||||
)
|
||||
|
||||
|
||||
async def setup(bot):
|
||||
cog = NewHelpMenu(bot)
|
||||
await bot.add_cog(cog)
|
||||
30
newhelpmenu/info.json
Normal file
30
newhelpmenu/info.json
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
"author": ["everestmcarthur"],
|
||||
"install_msg": "Thanks for installing **New Help Menu v1.0.0** — the ultimate customisable help system!\n\nThe cog automatically replaces your default help command with an interactive, button-driven menu.\n\nGet started:\n• `[p]helpmenu theme <name>` — choose a theme (default, minimal, compact, dark)\n• `[p]helpmenu category create <name> <emoji> <description>` — build custom categories\n• `[p]helpmenu category addcog <category> <CogName>` — assign cogs to categories\n• `[p]helpmenu settings` — view all current settings\n• `[p]helpmenu preview` — preview the menu\n\nFull docs: `[p]help helpmenu`",
|
||||
"name": "NewHelpMenu",
|
||||
"disabled": false,
|
||||
"short": "Fully customisable interactive help menu with categories, buttons, select menus, themes, search & favourites.",
|
||||
"description": "New Help Menu v1.0.0 completely replaces Red's default help formatter with a modern, interactive experience. Features include: custom categories with emoji/colour/thumbnail/image per category, 4 built-in themes (default/minimal/compact/dark) plus full custom mode, button and select-menu navigation, paginated command lists, command search via modal, per-user favourite commands, role-gated category visibility, quick-link buttons (URLs), custom home page fields/images/tagline, per-command detail views with subcommand browsing, cooldown/permission/alias display toggles, DM help mode, ephemeral mode, auto-delete, hidden cogs/commands blacklists, uncategorised section control, and 50+ admin configuration commands.",
|
||||
"tags": [
|
||||
"help",
|
||||
"menu",
|
||||
"buttons",
|
||||
"select",
|
||||
"interactive",
|
||||
"categories",
|
||||
"customise",
|
||||
"customize",
|
||||
"theme",
|
||||
"embed",
|
||||
"search",
|
||||
"favourites",
|
||||
"navigation",
|
||||
"ui",
|
||||
"paginator"
|
||||
],
|
||||
"type": "COG",
|
||||
"end_user_data_statement": "This cog stores Discord user IDs and guild IDs for per-user favourite commands and per-guild help menu configuration including categories, themes, and display preferences.",
|
||||
"min_bot_version": "3.5.0",
|
||||
"min_python_version": [3, 9, 0],
|
||||
"requirements": []
|
||||
}
|
||||
1573
newhelpmenu/newhelpmenu.py
Normal file
1573
newhelpmenu/newhelpmenu.py
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue