Some filters to make Discord less shitty

No, I will not pay 5 goddamn dollars for an avatar border. Stop asking.

Some filters to make Discord less shitty
average discord user

For uBlock Origin:

discord.com##[aria-label="send a gift" i]
discord.com##[aria-label="open sticker picker" i]
discord.com##[aria-label="open gif picker" i]
discord.com##[aria-label="add super reaction" i]
discord.com##[class*="offerBadge"]
discord.com##div > a[href="/activities"]
discord.com##div > a[href="/store"]
discord.com##div > a[href="/shop"]
discord.com##[class*="categorySectionNitroLocked_"]
discord.com##[class*="nitroTopDividerContainer_"]
discord.com##[class*="upsellContainer_"]
discord.com##[class*="questsContainer_"]
discord.com##[class*="questsCard_"]
discord.com##[class*="app-launcher-entrypoint"]
discord.com##[aria-label^="click to react with " i]
discord.com##div[aria-label="Edit Image with Apps"]
discord.com##div[class^="hoverBarButton_"][aria-label="Forward"]

! activity history filters (check these first if you have porblem)
discord.com##h3[class^="membersGroup_"]:has(> span:has-text(/^Activity,/))
discord.com##div[aria-label="Members"] > div > div[role="listitem"]:has(> div[class^="container_"] > div[class^="infoSection_"])

For BetterDiscord (which injects into the app[1] itself):

button[aria-label="send a gift" i] {
  display: none;
}

button[aria-label="open sticker picker" i] {
  display: none;
}

button[aria-label="open gif picker" i] {
  display: none;
}

button[aria-label="add super reaction" i] {
  display: none;
}

[class*="offerBadge"] {
  display: none;
}

div > a[href="/activities"] {
  display: none;
}

div > a[href="/store"] {
  display: none;
}

div > a[href="/shop"] {
  display: none;
}

[class*="categorySectionNitroLocked_"] {
  display: none;
}

[class*="nitroTopDividerContainer_"] {
  display: none;
}

[class*="upsellContainer_"] {
  display: none;
}

[class*="questsContainer_"] {
  display: none;
}

[class*="questsCard_"] {
  display: none;
}

[class*="app-launcher-entrypoint"] {
  display: none;
}

[aria-label^="click to react with " i] {
  display: none;
}

div[aria-label="Edit Image with Apps"] {
  display: none;
}

div[class^="hoverBarButton_"][aria-label="Forward"] {
  display: none;
}


/* activity history filters (check these first if you experience probalo) */

h3[class^="membersGroup_"]:has(> span[class^="headerContainer_"] > div[class^="header_"]) {
  display: none;
}

div[aria-label="Members"] > div > div[role="listitem"]:has(> div[class^="container_"] > div[class^="infoSection_"]) {
  display: none;
}

These will hide the "super reaction" buttons that my friends often accidentally click, the sub-newgrounds flash games button ("activities"), the button that jumps to the bad clipart tab in the gif/emoji picker, and various buttons encouraging you to spend money on Nitro or various shameful sub-Gaia-Online-quality profile cosmetics.

If you have a normal human tolerance for bad fonts that are trash garbage and hideous, you can stop here.

If you're like me, and aren't a fan of vicious and evil assaults on the eyes, and do not (as George C. Scott's character in The Exorcist 3 put it) "believe in slime, and stink, and every crawling, putrid thing, every possible ugliness and corruption," then you can also swap Discord's execrable custom font out for Source Sans 3.[2]

For BetterDiscord:

@import url('https://fonts.googleapis.com/css?family=Source%20Sans%203&display=swap');
@import url('https://fonts.googleapis.com/css?family=Inconsolata&display=swap');

:root {
  --font-primary: "Source Sans 3",sans-serif;
  --font-display: "Source Sans 3",sans-serif;
  --font-code: 'Inconsolata',sans-serif;
}

code {
  font-size: 16px !important;
}

For Tampermonkey or whatever userscript extension you prefer:

// ==UserScript==
// @name         Destroy Terrible Gamer Font
// @namespace    http://tampermonkey.net/
// @version      2024-04-10
// @description  god forbid i replace your piece of shit font
// @author       blorgblorgblorg
// @match        https://discord.com/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=discord.com
// @grant        GM_addStyle
// ==/UserScript==

GM_addStyle("@import url('https://fonts.googleapis.com/css?family=Source%20Sans%203&display=swap'); :root{ --font-primary: 'Source Sans 3',sans-serif !important; --font-display: 'Source Sans 3',sans-serif !important; --fontfix-text-stroke-width: 0px; --fontfix-text-stroke-width-messages: 0px; }");
GM_addStyle("@import url('https://fonts.googleapis.com/css?family=Inconsolata&display=swap'); :root{ --font-code: 'Inconsolata',sans-serif !important;}  code { font-size: 16px !important; }");
console.log('fuck you, discord');

 

I really don't care for that Discord font.


October 4th, 2024 update

Added a filter to hide the new message forward button in the message mouseover menu.

Why is this here??? It just copypastes the message somewhere in block quote tags! Why are the devs obsessed with bloating the mouseover popup right now? Get a real job!

September 26th, 2024 update

Added filters to hide the "app launcher" bullshit, the past activity box in the server member list, and the suggested emoji reactions in the menu that appears when you mouse over a post.

Since the mouseover menu is basically just quick access to the right-click menu, you could also hide it entirely with these filters, if you wanted. (First is for UBO, second is for BetterDiscord.)

discord.com##div[class*="popoverReactionHoverBar_" i]
div[class*="popoverReactionHoverBar_" i] {
  display: none;
}

Notably, the activity box in the server members panel is both poorly signposted in the code (meaning the weird filters I had to make could conceivably cause false positives), and something server owners really should be turning off themselves. So if you are having weird behavior, try removing the last two filters. If that fixes it, shoot me an email at amyinvisible text to attempt to thwart automated email @ddress harvestersblorgblorgbl.org and let me know I fucked up my CSS selectors.

August 21st, 2024 update

Added filters to hide the "quests" bullshit and the featured apps button. Also now hiding the gif picker button, not just the sticker picker, because the gif and sticker pickers are both accessible as tabs in the emoji picker, so only one button is needed.

April 10th, 2024 update

Added code to replace the new supplementary font crime "gg code" with Inconsolata. (I also jumped the code font size from 14 to 16 because it's easier for me to read.)

March 4th, 2024 update

Added three more filters to get rid of the new aggressive upselling in the emoji picker.

November 2nd update

Add this to get rid of the spammy new-server checklist nag demanding that you add a bot to your server that periodically informs you of Steam sales on SCP wiki microtransactions.

discord.com##div[class*="cardTextContainer__"]:has-text(/Add your first app/):upward([class^="cardWrapper__"]):upward(1)

November 10th update

Source Sans Pro has been superceded by Source Sans 3 and who knows how long they'll keep supporting the old URL when the font page is gone now. Also added a footnote about Stylus settings.

December 7th update

Noticed the BetterDiscord font CSS wasn't catching all the text, and realized I hadn't backported the variable stuff from stylus, so I did that.

December 8th update

Unwilling to rest on their idiot asshole laurels after fucking up the mobile app, Discord appears to have changed their Content Security Policy to block style injections?? Stylus stopped working, and even with the "Patch CSP to allow style assets" advanced setting enabled I was getting console errors about the styles being blocked by what appeared to be a CSP setting to categorically ignore whitelisted external scripts. I ended up having to make a userscript to inject the non-awful font. Preserved below is the custom CSS from the innocent beforetimes:

@import url('https://fonts.googleapis.com/css?family=Source%20Sans%203&display=swap');

:root{
    --font-primary: "Source Sans 3",sans-serif;
    --font-display: "Source Sans 3",sans-serif;

    --fontfix-text-stroke-width: 0px;
    --fontfix-text-stroke-width-messages: 0px;
}

  1. It's not actually an app, it's Electron.js, which means it's a dedicated Chrome instance displaying a web page pretending to be an app. Electron is the software equivalent of 3 raccoons in a trenchcoat insisting they are a human person. ↩︎

  2. Truly any font would be less vile than "gg sans", like the modded joke version of Comic Sans to add serifs, or that Blambot font that Penny Arcade uses to take 300 words per panel to say a videogame isn't very good. ↩︎