This repository was archived by the owner on Oct 9, 2025. It is now read-only.
v4.0.0
Features
- replies: remove replying-to embed when an imageUrl is specified (dev-737)
- message reply mentions (#132) #132 (Ujwal Karaparambil Rajesh)
- better nsfw detection (dev-737)
- messageInfo: better
messageInfoembed design (dev-737) - Mod Actions Panel (#136) #136 (dev-737)
- new infractions schema & managers #140 (dev-737)
- new blacklist helpers/managers #140 (dev-737)
- add
View Infractionscommand, and button to Mod actions panel #140 (dev-737) - add profanity check for guild name in join command (dev-737)
- hub: Add Settings command and Logging command implementations (#142) #142 (dev-737)
- hub: appeal blacklists through button (#141) #141 (dev-737)
- BaseCommand: add build method to build command from class (dev-737)
- message-info: improve message info command (#145) #145 (dev-737)
- add new valid error messages for webhook URLs #150 (dev-737)
- cache: replace cacheClient with Redis client function (#153) #153 (dev-737)
- Add progress spinner to command registration (#156) #156 (dev-737)
- cluster: enable recluster and heartbeat management #157 (dev-737)
- network-message: Use redis entirely to store messages (#161) #161 (dev-737)
- hub: add MessageBlockList (#163) #163 (dev-737)
- locales: update connection tips to use
{edit_cmd}instead of{customize_cmd}#164 (dev-737) - new and improve anti-spam manager (#167) #167 (dev-737)
- hub: add announce command for hub announcements (#174) #174 (dev-737)
- new rules (#177) #177 (dev-737)
- pagination: add search and select page to Pagination (#182) #182 (dev-737)
- network: block word rules (#181) #181 (dev-737)
- make connection
lastActivefield required #185 (dev-737) - connection list: show if connection is connected or not #185 (dev-737)
- make
/hub visibilitya command (#184) #184 (dev-737) - hub join: Add functionality to join a random hub #185 (dev-737)
- Add functionality to join a random hub if no invite or name provided #185 (dev-737)
- add
modpanelanddeletemsgprefix commands (#189) #189 (dev-737)
Bug Fixes
- bug fixes and refactors (dev-737)
- blacklist: fix blacklist duplication with
apps > blacklist(#129) #129 (dev-737) - prevent broadcast from breaking when tenor_key is not present (dev-737)
- fix cacheUtils type error (dev-737)
- update Constants.js path (dev-737)
- cache: Update cache serialization and deserialization functions (#144) #144 (dev-737)
- deleteMsg: also delete message from redis (#165) #165 (dev-737)
- fix onboarding in progress bug #185 (dev-737)
- expect correct imgur url instead of making api call (#183) #183 (dev-737)
- blacklist list: show expiring blacklists first (#187) #187 (dev-737)
- userInfractionManager: create a userData if it does not exist #188 (dev-737)
- connection edit: update parentId on channel change #190 (dev-737)
- start api in cluster.ts #190 (dev-737)
Documentation
Styles
- add typings to locale keys (dev-737)
Code Refactoring
- enable vscode debugging & snippets (dev-737)
- use short import paths (dev-737)
- eslint: add new eslint rules based on airbnb guide (dev-737)
- format api code (dev-737)
- add replyEmbed method to base command (dev-737)
- blacklist: better code and performance (#83) #83 (dev-737)
- clean up codebase to make it at least a little readable (#87) #87 (dev-737)
- move interchat snippet to command.code-snippets (dev-737)
- hub: refactor /hub joined and /hub manage (dev-737)
- constants: move constants into a single object (#123) #123 (dev-737)
- connectedlist: new connectionHubId redis key instead of storing entire connection (dev-737)
- logger: make timestamps grey (dev-737)
- folder structure & small /hub refactor (#137) #137 (dev-737)
- use asynchronous fs (dev-737)
- use prefix for imports wherever possible #139 (dev-737)
- split utils.ts into multiple files #139 (dev-737)
- use
InfoEmbedinstead ofsimpleEmbedwherever possible #139 (dev-737) - use
InfoEmbedinstead of using simpleEmbed function (dev-737) - schema: rename model
hubstoHub(dev-737) - Refactor runChecks to use separate functions for each check. (#143) #143 (dev-737)
- new hubInvite schema (dev-737)
- move managers in
src/modulestosrc/managers(#148) #148 (dev-737) - locales: simplify
t()helper by separatingphrase,localefrom object (#147) #147 (dev-737) - client: remove isGuildTextBasedChannel utility function (#149) #149 (dev-737)
- add localization to main repo #150 (dev-737)
- imports: new
#utilsimport mapping #152 (dev-737) - api: simplify vote webhook handling #157 (dev-737)
- replace parse-duration with ms (#158) #158 (dev-737)
- network: simplify message broadcasting and checks (#162) #162 (dev-737)
- subcommands: rename stuff like modify/customize to
editfor consistency #164 (dev-737) - hub: add 'edit' and 'list' subcommands #164 (dev-737)
- remove redudant jumps #164 (dev-737)
- blacklist: move logging logic inside
BlacklistManager(#166) #166 (dev-737) - Update command descriptions with emojis for better user experience. (#171) #171 (dev-737)
- HubLogger: ensure extras field is always defined in
logAppeals#172 (dev-737) - fix being able to mention everyone/here in announcements #172 (dev-737)
- connectedList: use hashes instead of individual keys #172 (dev-737)
- cacheConnectionHubId: use destructuring and for...of loop #172 (dev-737)
- update cache utility file imports (#175) #175 (dev-737)
- connection: make channel optional (#173) #173 (dev-737)
- new hub browse design #185 (dev-737)
- infoEmbed: remove
INFO:title #185 (dev-737) - Update imports in command code snippets, use relative paths #188 (dev-737)
- hub browse: Update button disabled logic to use variable #188 (dev-737)
- core: update prefix CommandData` interface, execute method, util functions (#191) #191 (dev-737)
Builds
- pm: use pnpm as default package manager (dev-737)
Chores
- move genLocaleTypings.js to scripts/genLocaleTypings.js (dev-737)
- update prismaCache typings (dev-737)
- tweak eslint rules (dev-737)
- add new words to profanity.json (dev-737)
- remove parseTimestampFromId() as djs alread has util for it (dev-737)
- add contribution message to readme (dev-737)
- deps: update dependencies (dev-737)
- deps: update deps (dev-737)
- add local development environment (#138) #138 (quitkickingmeunderthetable)
- update dependency versions (dev-737)
- deps: update versions (dev-737)
- remove Dockerfile (#146) #146 (dev-737)
- rename locale files #150 (dev-737)
- deps: update dependencies #150 (dev-737)
- improve readme for v4 (#151) #151 (dev-737)
- update license and add contributors image to readme (#155) #155 (dev-737)
- Update README (dev-737)
- localization: update portuguese locale (#160) #160 (Matheus-Parreira)
- deps: update deps to latest #172 (dev-737)
Commits
- d755bfa: update env variable names (dev-737)
- 8d63f7c: update submodule commit hash (dev-737)
- 39d7f53: move image fetch to cf workers & convert images to jpg for nsfw scan (#127) (dev-737) #127
- 2c99879: format codebase (dev-737)
- c8c6c2a: update locales submodule (dev-737)
- 2b134d0: fix husky command (dev-737)
- 95089a2: Merge branch 'main' into tsconfig.refactor (dev-737) #139
- 08d3348: Create CODE_OF_CONDUCT.md (dev-737)
- e7a8492: Update issue templates (dev-737)
- a4446d2: update readme (dev-737)
- e64e7d9: update locales subrepo (dev-737)
- 3c9f318: Release 4.0.0 (dev-737)