{ "staff-tags": { "category": "Moderation & Appearance", "status": "rebuilt", "accent": "#F23F42", "tagline": "OWNER/ADMIN/STAFF/MOD tags, computed from real permissions - not role names.", "note": "Previously broken. Rebuilt with per-patch crash isolation, plus new customization: per-tag text, colors, gradients, and visibility.", "howItWorks": "Staff Tags looks at what a member can actually do in a server - Administrator, Manage Server, Manage Messages, Kick/Ban, and so on - and shows a small colored tag next to their name based on the highest-matching tier. It doesn't care what a role is named, so a role called \"Cool Person\" with Manage Messages still shows MOD. Tags appear in chat messages, the member list, the profile popout, and channel headers.\n\nThe old version of this plugin patched four separate Discord UI surfaces, and if Discord renamed even one internal component, the whole plugin's setup would throw and every tag everywhere would silently disappear. This rebuild wraps each of the four patches in its own guard, so a single broken surface degrades gracefully instead of taking the other three down with it.", "features": [ "Seven built-in tiers: Webhook, Owner, Admin, Staff, Mod, VC Mod, Chat Mod", "Per-tag show/hide toggle", "Custom tag text (rename \"MOD\" to whatever you want)", "Custom solid colors with a swatch picker", "Gradient tags in the member list and profile (chat tags stay solid - platform limitation, explained below)", "\"Use top role color\" fallback when no custom color is set" ], "commands": [], "limitations": "Gradient colors only render in the member list and profile popout. Chat message tags are built from plain data passed to Discord's native row renderer, not a patchable React element, so there's no element to swap in a gradient view - they always fall back to a solid color there." }, "role-color-everywhere": { "category": "Moderation & Appearance", "status": "revived", "accent": "#5865F2", "tagline": "A member's role color, applied everywhere Discord doesn't already show it.", "note": "Previously broken. Ported from the original source and hardened with the same crash-isolation fix as Staff Tags.", "howItWorks": "Discord already colors a message author's name by their top role - this extends that same color into places Discord leaves plain: @mentions inside message text, the \"X is typing...\" indicator, voice channel participant lists, and the role section headers in the member list. There's also an optional (off by default) mode that tints the message text itself toward the author's color, though that comes with a real tradeoff: it disables text selection on tinted messages, since the coloring works by wrapping the text in a link-style element.", "features": [ "Colored @mentions in chat", "Colored typing indicator", "Colored voice channel participant names", "Colored member list role section headers", "Optional message-text tinting with an adjustable strength slider (0-100)", "Every surface can be toggled independently" ], "commands": [], "limitations": "The member list header coloring works by patching a generic, unnamed internal component (there's no dedicated \"RoleHeader\" component to target), which makes it the single most fragile surface in this plugin. If a future Discord update breaks it, the other four surfaces are unaffected." }, "pronoun-db": { "category": "Identity", "status": "revived", "accent": "#9B59B6", "tagline": "Shows a user's pronouns in their profile, pulled from pronoundb.org.", "note": "Previously broken because PronounDB shut down the API it used (HTTP 410) - migrated to their current v2 API. Requires people to have set pronouns at pronoundb.org; nothing to configure in the plugin itself.", "howItWorks": "PronounDB is a separate, independent service (not run by Discord or Revenge) where people manually set their own pronouns once and link the profile to their Discord account. This plugin adds a \"Pronouns\" section near the bio on anyone's profile who has done that. Lookups are batched and cached client-side, so opening a profile for the first time may take a moment while it fetches, and re-opening the same profile later is instant.", "features": [ "Adds a native-feeling \"Pronouns\" section to profiles", "Batches and caches lookups so scrolling through many profiles doesn't spam requests", "Nothing to configure - no API key, no toggle" ], "commands": [], "limitations": "Only shows pronouns for people who have actually created a PronounDB profile and linked their Discord account. If nobody you interact with has set one, you'll never see the section - that's expected, not a bug." }, "message-snippets": { "category": "Productivity", "status": "new", "accent": "#23A55A", "tagline": "Save reusable text once, send it anywhere with a slash command.", "note": "Didn't exist in the Revenge/Vendetta plugin ecosystem before.", "howItWorks": "Save a name and a block of text once - server rules, an FAQ answer, your PayPal, whatever you type often - then send it in any server or DM with a single command instead of retyping or copy-pasting from notes. Snippets are stored locally on your device and sync with nothing external. Built entirely on Revenge's built-in command API rather than patching Discord's UI internals, so it doesn't carry the \"might silently break on a Discord update\" risk that UI-patching plugins do.", "features": [ "/snippet sends the saved text as a real message", "Manage everything from the plugin's settings screen: add, preview, and delete", "Slash-command management too: /snippet-save, /snippet-delete, /snippet-list", "No character limit beyond Discord's own message limit" ], "commands": [ { "cmd": "/snippet ", "desc": "Sends the saved snippet as a message in the current channel" }, { "cmd": "/snippet-save ", "desc": "Saves or overwrites a snippet" }, { "cmd": "/snippet-delete ", "desc": "Deletes a saved snippet" }, { "cmd": "/snippet-list", "desc": "Shows your saved snippet names as a toast (not posted publicly)" } ], "limitations": "" }, "reminders": { "category": "Productivity", "status": "new", "accent": "#F0B232", "tagline": "Quick reminders without leaving the chat you're in.", "note": "Didn't exist in the Revenge/Vendetta plugin ecosystem before. Only fires while Discord is running.", "howItWorks": "Set a reminder with a simple duration and a note, and it'll pop up as an in-app alert once it's due - no need to switch apps or set a system alarm. Reminders are checked every 15 seconds while the plugin is loaded and persist in local storage, so they survive a plugin reload, but not a fully closed app: pure-JS plugins can't schedule native OS notifications, so this can only fire while Discord's process is actually alive (foreground or backgrounded-but-running).", "features": [ "Flexible duration parsing: 10m, 2h, 1d, 30sec, 1 week, and more", "See and cancel pending reminders from the plugin's settings screen", "Persists across a plugin reload" ], "commands": [ { "cmd": "/remind ", "desc": "e.g. /remind 20m Walk the dog - fires an in-app alert when it's due" } ], "limitations": "Can't wake Discord up from fully closed - that needs a native OS-level scheduled notification, which isn't something a JS-only plugin has access to. If you force-close the app, pending reminders resume checking once you reopen it, but won't have fired while it was closed." } }