PronounDB: add settings screen explaining it needs a pronoundb.org profile, not in-plugin config

This commit is contained in:
everestmcarthur 2026-08-01 10:26:18 -04:00
parent 85d6375fae
commit d682bcb6a1
5 changed files with 46 additions and 4 deletions

View file

@ -16,7 +16,7 @@ A collection of plugins for [Revenge](https://github.com/revenge-mod/revenge-bun
| --- | --- | --- | --- |
| Staff Tags | Rebuilt | OWNER/ADMIN/STAFF/MOD-style tags next to members, computed from real server permissions. Per-tag text, colors, gradients, and visibility. | `https://everestmcarthur.github.io/revenge-plugins/staff-tags/` |
| RoleColorEverywhere | Revived | A member's top role color shown in mentions, the typing indicator, voice channel names, member list role headers, and optionally message text. | `https://everestmcarthur.github.io/revenge-plugins/role-color-everywhere/` |
| PronounDB | Revived | Shows a user's pronouns (from pronoundb.org) in their profile. | `https://everestmcarthur.github.io/revenge-plugins/pronoun-db/` |
| PronounDB | Revived | Shows a user's pronouns in their profile, if they've set them at pronoundb.org (nothing to configure in the plugin itself). | `https://everestmcarthur.github.io/revenge-plugins/pronoun-db/` |
### Productivity

View file

@ -1,6 +1,6 @@
{
"name": "PronounDB",
"description": "Shows a user's pronouns (from pronoundb.org) in their profile.",
"description": "Shows a user's pronouns in their profile, if they've set them at pronoundb.org - see the plugin settings for details.",
"authors": [
{ "name": "everestmcarthur" }
],

View file

@ -3,6 +3,7 @@ import { find } from "@vendetta/metro";
import { after } from "@vendetta/patcher";
import { findInReactTree } from "@vendetta/utils";
import PronounSection from "./ui/PronounSection";
import Settings from "./ui/Settings";
const UserProfile = find((m: any) => m?.type?.name === "UserProfile");
@ -40,5 +41,6 @@ export default {
logger.error(`[PronounDB] Failed to apply the profile patch: ${e}`);
}
},
onUnload: () => unpatch()
onUnload: () => unpatch(),
settings: Settings
};

View file

@ -0,0 +1,40 @@
import { ReactNative } from "@vendetta/metro/common";
import { Forms } from "@vendetta/ui/components";
const { ScrollView, View, TouchableOpacity, Linking } = ReactNative;
const { FormSection, FormText } = Forms;
const PRONOUNDB_URL = "https://pronoundb.org/";
export default function Settings() {
return (
<ScrollView style={{ flex: 1 }}>
<FormSection title="How this works">
<View style={{ paddingHorizontal: 16, paddingVertical: 8 }}>
<FormText style={{ marginBottom: 12 }}>
This plugin doesn't have anything to configure here - there's no API key or toggle,
because pronouns aren't Discord data. They come from PronounDB, a separate service
where people manually set their own pronouns and link the profile to their Discord
account.
</FormText>
<FormText style={{ marginBottom: 12 }}>
That means a user's pronouns will only show up if THEY set them at pronoundb.org - not
because of anything you enable here. If you want your own pronouns to show up for
other people running this plugin, set them yourself at the link below.
</FormText>
<TouchableOpacity
onPress={() => Linking.openURL(PRONOUNDB_URL)}
style={{
backgroundColor: "#5865F2",
borderRadius: 8,
padding: 12,
alignItems: "center"
}}
>
<FormText style={{ color: "white" }}>Open pronoundb.org</FormText>
</TouchableOpacity>
</View>
</FormSection>
</ScrollView>
);
}

View file

@ -12,7 +12,7 @@
"pronoun-db": {
"category": "Identity",
"status": "revived",
"note": "Previously broken because PronounDB shut down the API it used (HTTP 410). Migrated to PronounDB's current v2 API."
"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."
},
"message-snippets": {
"category": "Productivity",