#🎨-theme-development
1 messages · Page 8 of 1
i just played around with it
.childWrapper-1j_1ub{
visibility: hidden;
}
.wrapper-3kah-n{
background: url(https://shiggy.fun/api/v3/random?aspect-ratio=1);
background-size: contain;
}```
this is enough lol
no but like the colours
.banana {
background: balls;
}
the cute colours
```css
banana
```
[class^=listItemWrapper]{
background: url(https://shiggy.fun/api/v3/random?aspect-ratio=1);
background-size: contain;
border-radius: 50%;
}
[class^=childWrapper]{
display:none;
}```
not sure how it plays with transparency
good lol
how to get this?
then you can do usercss
search up usercss and click the github link by openstylus or something
thanks
the self building thing
i feel like that would get effortful, given that i’m on web hm
well at least it’s too late at night for that rn
you cant tell me it doesnt work for you :)
b-but i want web for my chrome extensions
use themes
wanna block ads? boom
https://d3sox.me/complementary-discord-theme/hide-nitro-upselling.theme.css
ig i could hop on vesktop to do the gui config, then copy the values to my stylus css
themes aren’t enough
i was thinking of saying “show me a theme that can do what HoverZoom+ can and we’ll talk (unlikely)”. But i also need html5 video control hotkeys, which is def not in theme territory.
i also use Dark Reader, Stylus
i have a faint memory Armcord may be supporting chrome extensions. But i don’t see that it’s worth the hassle.
Since my browser profile is synched to the cloud, i have all my stuff ready relatively quickly when i’m on a new or interim pc.
plausibly at some point i’ll use Violentmonkey as a poor person’s client mod :^)
@edgy sentinel why doesn’t vc allow injecting js snippets (“QuickJS”)? an extension store policy thing?
why would it
confusing.
for the same reason it has QuickCSS?
it would be v easy to implement (i think?) and nice to have for power users in particular, rather than having to do the whole building thing or each time opening the console for pasting
you can just use the dev console if you really need it
is that different from the chrome DevTools?
it is identical
then it’s inconvenient, cause not persistent. You wouldn’t want to paste your plugins or quickcss into console every time you load dc
maybe Local Overrides could be used, idk, but also less convenient than a QuickJS i suppose
it's out of scope, has potential security issues and i don't want to take responsibility for people potentially adding malicious or broken scripts
you can use openasar js
makes sense, ty
(except the out of scope part, that i don’t get, but peu importe)
(well i personally would prbly use Violentmonkey then)
but good to know that openasar has that, just in case
omfg someone please fix dc’s newest fuckup: non-scrolling server profiles (which can be too high for the viewport)
well this happened before but it was fixed by clicking again on the profile, now it always happens
yh
theme 
nevermind i didnt
im going insane
/* home icon */
.childWrapper-1j_1ub{
background: url("/assets/37a397ee39fe0063db4a2b3221aa8425.webp");
background-size: contain;
visibility: hidden;
}
[aria-label='Direct Messages'].wrapper-3kah-n {
background: url(/assets/37a397ee39fe0063db4a2b3221aa8425.webp);
background-size: contain;
}
[role="treeitem"] {
visibility: visible !important;
}```
like
i figured out that the top rule also includes channels w/ no icon
hold
merci
so i put the bottom rule in
but it does nothing, when it should?
unless visible isn't what it's meant to be set to
check
they don't have a visible value by default
i'm imposing one on it with the top and bottom rule
not sure where you are, but i meant
OH right hold on
yeah it's looking like it doesn't have one by default
i tried filtering
default shouldn’t matter, since you’re setting it
not the same elem
wait no this wouldn't even work anyway then
what?
because the home button has treeitem
oh lmao
ok well if the home button has treeitem i have no clue how to select server icons seperately and force them to be visible / not included
personally i do not care bc i have no servers without icon but
if someone else uses the css who does 🤷♀️
wait can css do partial wildcards
yeah *= if that’s what you mean
dm, i’ll forward
i think i might have an idea then, hold on
nah you just don’t got embed perms
then why can i upload files ??
well not images, right?
i don’t think you can
^
oh lol whoops
i must be doing this wrong
hold on
right so the server icons have an id that has NO_LIST in it
oh the channel perms allow it
[id*="NO_LIST"] { visibility: visible !important; }
would this work? i could've sworn there's a diff way to specify ids tho
i mean looks fine, but i’m not familiar with the elem you want to match so i can’t say for sure at a glance
ah, didn’t read this. Yupyup, you coded that right
who isn’t
divs with the class wrapper-3kah-n that aren't the home icon
they were hidden earlier by a selection of the wrapper, and i'm selecting SERVER icons specifically with the no_list wildcard
nevermind
nevermind
wrong element
RSIGJRSIHSIR
if i do it by aria-hidden it unhides the discord icon again
fuck me
i need to find something the server icon .childWrapper-1j_1ub has that the home doesn't
is it possible to exclude an entire selector from any rules at all, including it's children
because i could exclude aria-label="Servers"
found something, hold on
I FUCKING GOT IT
WOMAN IN STEM
you go girl! :D
(sorry for my silence, i was trying to dig up a server icon selector from my code, but vfghqfxghlvqhc)
thanks it almost brought me back to discord bot rage
this is why i stick to rust
no it was just the fact that occasionally discord.js barely made any sense to work with
sometimes it felt like i was being told to do government mandated spaghetti code
lol that bad
so what did you end up with?
nice
just not sure where i’d put my image url
curious
whatever is that, doesn’t sound very servery
i wonder where
it does actually
the icons are blank, so they use an [acronym] of the name
ahh gotcha
suffix for those icons im guessing
suffix for those icons
huh wdym?
well i dont know if the class for regular servers has acronym in it
if it does, it clearly doesn't affect them enough
are you interested in a suggestion?
will this make me even more suicidal
no
ok
ok. well first a question. the two url fields, can it make sense to assign different imgs or should they be the same one?
oh the first url field literally isnt necessary
bc it's hidden anyway
im just lazy
oh lol alr
there is no way it just fucking broke
my quickcss decided it'd be funny to randomly revert ig
does anyone know if it's possible to change the font on the quickcss editor somehow
nope
we cant theme the quickcss window yet
but maybe one day we get nested quickcss
nested quick CSS is already available (according to Vee)
I won't risk ruining my theme doing that though
im talking about a quickcss window for the quickcss window
isnt the quickcss window a vs embed or something
technically you would need to get a vs theme in there, but how
the quickcss window is also html, you can open a Dev console in there
so in theory you just need to do whatever quickcss does in the first place and redirect it onto that
Regarding #announcements
Is it just the numbers like they changed
.container-1594
To
.container-3821
So generic selectors like
[class^=container] still work?
Or did they change it from container-3821 to fuckYouDifferentNameNow-6329
yeah the first, just the hashes
and they added new classes, but that shouldn’t break anything
Hopefully people learn this time and use generic selectors :p
This is totally the first time we have learned this lesson
ikr
performance issues:
I don't want to convert all my 3000 lines to that ;-;
do you have any evidence that they lead to performance issues
i ask this everyone who claims they do and noone can ever provide any evidence
i wouldnt be surprised, not because theyre inherently slower but because Browsers Lol
well in theory of course, if you do [class^=wrapper] its gonna check a fuckton of elements
stop
this is worth nothing
if you want to talk about perf, create a proper benchmark
show how the differences in performance are and why it's relevant
otherwise you're just talking nonsense
@sharp shell made a snippo that converts the parametrized ones back to hashed: #1143123199832371200 We didn’t notice any clear difference
yop
computers are incredibly fast. yes, checking for substring instead of full match is most likely slightly slower but we're talking a minor difference at millions of checks per second
“optimization”
but at the same time, ^= might even be faster than normal class because it technically needs to check less
oh true lol
do not read chromium string comparison code you will go insane
i use *= tho, in case they add classes in front
point is, it's not possible to just say "yeah this is slower, don't use it". performance in 99.99% of cases does not matter, and in those cases where it does matter you should create a proper benchmark instead of making assumptions

lol how come?
it is not just strcmp
in any case ive seen many laggy discord themes (like frosted glass) and most of them don't even use attribute selectors

its that one meme
attribute selectors: 10ms
animations: 10000ms
can someone please help me budget my css performance
lmao
the only thing where you can absolutely say AVOID AT ALL COST is *
as in, the selector itself, not inside attribute selectors
* * * * * { color: red; }
https://measurethat.net/Benchmarks/ShowResult/436379
Data attribute selector gets "only" 3.2 million executions a second compared to 5 million executions a second that class selector does.
Yes, its slower. No, it doesn't matter.
was it not you who suggested to use .element instead of [class=*element]
(do not trust css benchmarks this simple/isolated completely but yes)
do you mean something like this?
yeah, thinking about it
why wouldn't it be
rewritten to better match what is happening in discord .hello-3wLKDe vs [class^=hello]
https://measurethat.net/Benchmarks/Show/27950/0/class-vs-generic-class-selector
.hello-3wLKDe - 789,629 ops/sec ±1.11%
[class^=hello] - 2,674,066 ops/sec ±1.31%
(as ducko said, take this with a grain of salt, as its a VERY oversimplified benchmark), but, generic classes FASTER
but how should I know whether to use [class^=] or [class*=]
startsWith does less than equals
because the former doesnt always work
if the class you are targeting is the first in the list, use ^=, otherwise *=
I will attempt my best to switch generic classes to attr selectors
but this is gonna be very long process...
I reran the test and got this result
negligible difference this time around
depends on the specific case
keep it in the back of ur mind but don't preemptively optimise
first write code however is most comfortable and maintainable to you, then if you later run into lag figure out why it happens and fix it

lets say you wanna select .wrapper-hash
if the class is .wrapper-hash then do [class^=wrapper]
if it has classes like .content-hash .wrapper-hash you have to do [class*=wrapper]
app does not open it wasnt like this few days before
not vencord but using openasar is it becoz of css class changed?
oh so it isnt theme problem
(and snippets, which are just themes)
app just stays on blank screen and unresponsive
vns
actually unresponsive or just a blank screen?
blank screen like on loading theme doesnt load
but when i click one time, it becomes "app does not respond"
if its just a blank screen it might be something with css, try typing vf themes in #🏥-vencord-support-🏥
oh okay not our issue
its not really vencord related thats why
i need to wipe the snippets idk how damn
its not css, so not a topic for here
just wait some minutes, it fixes itself, I think this happens with quick start in openasar
if thats not the case idk
the way slower is true though, avatarWrapper i think is in every memberlist, userpopout and profile avatar as well as dm
nevermind my mistake
yeah that selector is good
only thing i would know to improve is css [class^=panels-]>[class^=container-]>[class^=avatarWrapper-]
maybe the bad selector is actually better in this situation since the checking doesnt branch out into different elements
so its either that or css [class^=panels-] [class^=avatarWrapper-]
i can help you make a regex search and replace
you still need to check things manually, b/c some classes like wrapper-123xy are too general without hash. But for most occurrences the conversion would only take you a single keypress

they broke my onekoDM snippet ....
I just want to switch all the blues to pinks. ik the betterdiscord docs mention the variables but it's really confusing which one does what?
im pretty sure they also changed like chatContent to like chatContainer though
disclaimer: only works for Vesktop
paste that code in your quickCSS
If you want something that might work in other clients as well use this
wait so. could I just do:
:root {
--text-brand: #f7a8b8
}
or something?
yeah, but brand-experiment is responsible for all the blue elements in discord
changing its core will allow you to change the accent color to pink
oh wait so I just take that huge block of code and add
--brand-experiment: #f7a8b8;
like that?
OOOOO it worked ty
oop wait it broke the invite button
ok also in right click/dropdown menus, hovering over stuff doesn't highlight it anymore
This
but if there's still a problem, youll have to use the snippet I linked instead
assuming Vesktop just means the Vencord client on desktop, that's what I'm using
ventop
wrong
Ventop
im not a top
venbottom
yes
Now I know
how did you NOT know
Very useful
look at ven.
Cute
yeah did you heard his voice
😭
Best font: 'Rubik', san-serif global font and Jetbrains Mono code font...
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@200&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@100;400;600&display=swap');
@import url("https://catppuccin.github.io/discord/dist/catppuccin-macchiato.theme.css");
:root {
--font: 'Rubik', sans-serif;
--font-primary: var(--font);
--font-display: var(--font);
--font-header: var(--font);
--font-code: 'JetBrains Mono', monospace;
--text-link: #5865F2;
}
body,
html {
font-size: 14px;
tab-size: 4;
text-rendering: optimizeLegibility;
-webkit-text-size-adjust: 100%;
-moz-text-size-adjust: 100%;
text-size-adjust: 100%;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
Inter and IBM Plex Mono/FiraCode Nerd Font for me
I use roboto mono everywhere
iosevka
if not, default consolas
Does anyone knoww how to change the background on screenshare so it matches themes isn't of being default grey.
How exactly does the client process .class:has(.element)? does it do the exact same thing as .class .element?
or does it check from each .class down the tree to find .element?
also, is there a resource that i can bookmark where i can look it up myself?
it wouldn't do the same thing obviously as x:has(y) applies to x when x y applies to y
for all your css reference needs I recommend MDN
yes but i am thinking of the detail in which css processes it, not what the selectors do
for example i think f53 or what the username was told us that css actually goes from right to left instead of left to right when computing the selectors
oh wait i think i might have found it
the tree gets traversed up and down depending on the needs of the selector afaik
if you're worried about performance I don't think it makes a big difference tbh
my theme is nearing completion I think, I should start porting it to spotify, steam and firefox
I was under the impression it was computed left to right, but Ven corrected me
it most likely first checks the normal selector then processes things like not, has, etc
but we can not know for sure til someone reads chromium source code
or css spec (maybe)
i'd guess it wouldn't be css spec if it doesn't affecft behaviour
I doubt the spec helps, chromium isn't strictly following spec
looks hot
ah well :(

what the fuck
I don't even know what jarring means but it looks weird
jarring is when you are a horse statue and unfortunate things happen
uh?
Oh god
is there a way to remove this dot before the pronouns?
i want to pull something like this off, but the dots feel off for me
nope but there can be ✨
check if it is integrated in the text element that also holds other text
are you clever?
no
open a pr-oh
couldn't you use before or after on a selector or something for that kind of stuff?
haiii
[class^=timestampInline-]>:first-child {
display: none;
}
try this
I'm not sure if it can do that
I'm not home to test
font that makes that character specifically invisible
trolley
you can't theme parts of the inline text
you'd need to open a pr to put the delimiter in a separate span, or to move it to a ::before
oh okay, I thought the only issue was that there is no selector that fits that
first-child will only match actual elements
when I hover over it it says something along #text

you could just use a transform with negative translateX
then overflow hidden (? does that work idk) or move it behind the other element and zindex
might work
it somewhat works
pog
Well I didn't manage to get any further with that though, so I just let the dot be
and change other tags to differentiate between each other a bit
This is hacky but it works: ```css
@font-face {
font-family: "Blank Dot";
src: url("https://raw.githack.com/adobe-fonts/adobe-blank/master/AdobeBlank.ttf.woff");
unicode-range: U+2022;
}
[class^="timestampInline-"] {
font-family: "Blank Dot", var(--font-primary);
}
that url sounds interesting
I copied the @font-face from an old davri snippet, you could probably use the github link, not sure
@font-face {
font-family: "Blank Dot";
src: url("https://raw.githubusercontent.com/adobe-fonts/adobe-blank/master/AdobeBlank.ttf.woff");
unicode-range: U+2022;
}```This url also works
ayo it worked
THANK YOU
/* Timestamps */
[class^=timestamp] {
position: relative;
color: var(--text-normal) !important;
font-weight: bold;
letter-spacing: 0.05em;
border-radius: 4px;
font-size: 10px !important;
margin: 0 4px;
height: 16px;
top: -3px;
line-height: 1rem !important;
box-shadow: 0 0 0 1px var(--brand-experiment)
}
@font-face {
font-family: "Blank Dot";
src: url("https://raw.githubusercontent.com/adobe-fonts/adobe-blank/master/AdobeBlank.ttf.woff");
unicode-range: U+2022;
}
[class^="timestampInline-"] {
font-family: "Blank Dot", var(--font-primary);
}
[class^=timestamp]:has(time) {
background: var(--brand-experiment);
padding: 0 4px;
}
[class^=timestamp]:not(:has(time)) {
background: var(--brand-experiment-900);
padding: 0 4px 0 2px;
}
couldn't you in theory give the element it's font directly?
I am not sure I understand what you mean.
The @font-face is necessary even if you have the blank font installed because you need to specify unicode-range which makes it so only the • character gets blanked out.
hii @mortal pebble
hi davri <3
Is this still broken Aoi? 
its back online again
I do something like this to remove 'today at' in message timestamps
I set max-width:5ch and direction:rtl so only hh:mm shows up lol
interesting
I do use a monospace font so there's that, wouldn't work with all fonts
time[aria-label^="Today"],/*cut off "today at" */
.timestampVisibleOnHover-9PEuZS time::after
{ display: inline-block;
max-width: 5ch;
overflow: hidden;
direction: rtl;
white-space: nowrap;
vertical-align: bottom; }```
that's the code I have
and it worked flawlessly
awesome
i havent used any of the parameters you have used that much so no idea
yeah I haven't either, but I just throw random css at a problem until it works and I never look at it again
I don't even know what they do lol
will have to learn more
thats gonna be a lot of changes for v2.0.0 lmao
isanse

ISANSE
is there anyway to lower the typing thing down a little bit? (to fit the actual message bar)
have you given the messagebar position absolute?
im listening

this will rotate the entire element with all the messagebar stuff oupside down, and then again rotate the elements inside it upside down (so now right side up) so it looks normal
ah okay
and the margin thing just makes it look seemless
i have a few questions regarding smth else im trying to do
seamless? seemless? guh spelling
dont ask to ask
tryna make this entire thing black but the server list wont change colour
this means that the elements inside it also have a background
thats just a discord thing, they do that a lot
you can easily check which elements you need though by selecting the compute tab at the bottom instead of styles and looking if it has the background property
this has background
ah okay
yeah
its such a quick check imo
qhar
❓
im trying to round the banner here but i dont know how
ive tried
ive rounded it normall
just not in the profile settings
.bannerSVGWrapper-2CLfzN
thank you
np 
hey aoi
would you know how to colour the server list of the soundboard?
ive tried and am unsure on how
okay lol
.wrapper-22rqw6 {
background: var(--background-floating)
}
thank you
aoi doing non future proof code
too tired for that
its very unlikely that they are going to change that, not sure if discord decides elements to change
they sometimes change the hash at the end
but its probably elements that they are going to work with, not random stuff for no reason
they could
I still really hate how modern websites do that, it entirely defeats the purpose of classes
unique elements should have ids and classes should be reusable
its probably just a mess for people not working on that, like style creatos idk
but no let's have every element have 7 classes with random numbers
how?
all my websites also use such classes
it's just scoped styles
very convenient
I just don't understand, maybe I'm oldschool or maybe I'm dumb but as far as I understand ids should be unique but classes used across many elements
the point is quite simply styles scoped to the current component
you can write components without worrying about other classes in the dom
// Button.tsx
import Classes from "./Button.module.css";
export function Button({ text, onClick }) {
return <button className={Classes.button}>{text}</button>;
}
then ur css can just be
.button {
}
or even more extreme in the case of vencord's website, you can just target dom elements
and it only affects the current component, nothing else in the page
I still don't get it but I think that's ok
if you have many different buttons in the same app
you have to be very careful that your classes dont collide
ven make https://vencord.dev/shiggy
you wouldn't want your styles for the create role button to affect the gift button
so you end up writing verbose classes like .chat-bar-gift-button
the point of scoped styles is that you don't have this problem, instead you just
/* ChatBar.module.css */
.button {
}
if I have many different buttons in my app, I would have a class for each use case, or selectors that only select the ones I want
and your compiler turns it into .button-28aAx, whereas the create role button would be .button-10ajsA
no more conflicts and you don't have to come up with super verbose classes
i agree with nvhhr
I would rather have verbose classes and proper selectors instead of random character salad but then again I have never used anything but a text editor and pure html/css to make websites
i think the elements should have an id to select it specifically and classes to select it based on what the use of that element is
id = #close-window-button
class = .button .secondary-accent .dark-theme
for example
that would be super simple to manage
I have to admit I have no idea what a scoped style should even mean or accomplish when css has everything you should need builtin
obv yes if you're trying to mod its easier
from the dev side you don't see the character salad
but for the first party developer it's way easier to use mangled classes
cause like refactor said u dont see it
you see ".button"
i already told you
their point is that you can write super generic class names like "button" when you mean a very specific button
and never have to worry about conflicts
if you have a very large app like discord, managing thousands of classes is painful and introducing collisions will happen sooner or later
at some point u become tired of having to come up with thousands of unique super precise classnames
why name ur shit .member-list-nitro-boost-button when you could just name it .button and have the compiler make sure it doesn't collide with anything else
bring back web 1.0, I hate this
like look at this, i just target html elements like button, code directly and don't have to waste time coming up with good classnames
it's way faster/easier and more comfortable
ok but if you have these components why not have them have a class of their own that would be included in selectors or something
?
why would i do that when i can just not
you need to stop thinking from a third party modder view
and start thinking from a first party app developer view
how about you come up with hundreds of unique classnames for every element
it just gets annoying to create and type all of them
my point is that every element shouldn't have hundreds of unique class names
the main issue with discord's elements is that too many elements have the same classname
and they shouldnt all be called wrapper or content :(
thats not the point at all
hey guys need some support
you do [class^=content] {display:none} and its like doing * {display:none}
i meant if you have hundreds of unique elements, you don't want to create a unique class for each one
not multiple classnames for each element
i went there and was told to ask here
then ask your css related question
this is true
.membersWrap-3GwLFp {
min-width: 0 !important;
}
.member-2gU6Ar {
max-width: unset !important;
}
.membersWrap-3GwLFp:hover .members-2y1nVj {
width: 480px !important;
}
.members-2y1nVj {
transition: 250ms ease all;
width: 61px;
}```
had this snippet in my theme
discord rehash
class names changed, i updated them
o
fair, my bad
container behind memberswraper does not become small
but it does resize to bigger than normal when hovered
pretty sure discord added an extra container in there somewhere
yes but a third party modder and a first party app developer have basically the same intentions: understand what the previous person wrote and what everything does, only that third party modders probably have different intentions
nothing else in the theme conflicts with it i tried just having the snippet there
yeah I understood, but my point was and still is that the way classes are used nowadays is just so different to how they were intended, classes should have been for a group of items, such as .button that applies to every button; now every button has their own unique class that should've been an id
o i tried selecting that and resizing that and it doesn't quite work
the first party developer would have no problem understanding what it means tho
what it wraps would be obvious based on the component it's used in
that makes no sense
im talking about potential new employees that dont know much about discords code
ids are only meant for truly unique items, as in there is literally at most ONE SINGLE ELEMENT at once, no more
yes
them too
if you see wrapper inside UserProfile.css you will have no trouble understanding what it wraps
its easier to use all classes instead of only using ids for unique elements
and classes still work like this, they're just scoped to components
whereas these unique classes are only unique to the component they're used in
but there might be hundreds of instances of that component
like this messageListItem class
i just use classes for almost everything lol because you never know if you're gonna add more of it
ya
you should almost always avoid ids
unless you fully know it's unique
like this uses an id
lemme try to find a fix
I get it, and I'm not debating or arguing with you, but I still don't like it, even from the dev perspective I would never do this
please do because i am Stumped
u will change ur mind if u ever have to work on a large website
possibly
why does discord randomly update a bunch of class names?
they dont
their compiler just decided to
which usually means they changed their styles or added new classes
so the compiler will just randomize everything again after a new class is added, instead of just inserting that new class in with an available name?
well, certain classes got changed
ok try this
/*Minifiedmemberlist*/
.members-2y1nVj,
.container-2vWgD2 {
width: 64px;
transition: 0.3s ease;
}
.membersWrap-3GwLFp {
min-width: 0;
width: min-content;
}
.container-2vWgD2:hover,
.container-2vWgD2:hover .members-2y1nVj {
width: 480px;
}
.member-2gU6Ar {
max-width: unset;
}```
probably whereever a change was introduced then the elements around there will get their classes changed
they added a container around the member list
ya
this snippet is actually quite cool im keeping it
I see, that somewhat makes sense then, but I wonder that if there are enough class names to accommodate one more element (which there obviously should be), then why is a name change for all the others necessary?
Does it have something to do with security
kinda went to bed alr i will try it tomorrow
thx for the fix
i am not the best with css
There are approximately 64^6 options for class names, and there definitely cannot be that many button elements in a webpage
well they have a random string generator
if they add a new class, it gets in the middle
and shifts all elements, which changes the hashes?
idk how it works but smth like that probably

On their end they probably just use the names anyway right? Then the hashes would just be added after the fact and all the changes need automated? I can't imagine it really matters to them if 1 class changes or they all do
Go to bed
maybe
What are some good places for someone that has has very little programming experience to learn css?
The Odin Project is a decent place to start. It goes a bit further but it should cover most of what you need to know in the first few chapters
Thank you
hey, would anyone be able to fix this css to make the discord title bar more like windows (i don't like the vencord one) that broke in the latest update?
.winButton-3UMjdg {
height: 32px;
width: 32px;
margin-top: 0px;
padding-left: 8px;
padding-right: 8px;
}
.withFrame-2dL45i {
height: fit-content;
margin-top: 0px;
}
.wordmarkWindows-2dq6rw {
margin-top: 8px;
margin-left: 8px;
padding: 0px;
}
what
wdym you don't like the vencord one
vesktop has a setting to use discords windows title bar, or wdym
yeah but imo it looks weird cause it uses the windows translucent colour
whereas the css i used to use just keeps the regular black title bar and makes the buttons fit in more
seems like you didn't understand what Ven said
are you using normal discord with vencord or vesktop?
if you are using vesktop, you can enable the discord titlebar setting in vesktop settings
works perfectly
I already integrated the unreads into the channel icons themselves
it looks nice somehow
I think that the already highlighted channel names can differentiate which channels are unread.
[class*="unread-"] {
display:none
}
hey, does anyone have the selectors for the mute and deafen buttons?
[aria-label="Mute"],
[aria-label="Deafen"]
thank you
actually, this doesn't really work with {display: none;}
display: none !important;
why do you want to hide those? lol
Guess they don’t use vc often idk
There’s keyboard commands for those buttons anyways
oh right, I forgot about keybinds
I have not joined a VC in... 6 months, maybe more
That's the reason lmfao
you have a good point, but i don't think the end user would like to see the channel icons removed
replaces the old ugly 🥺 with the cooler one
The old one is better
show before and after
to be replaced:
~~https://cdn.discordapp.com/assets/e63c47fd56c7ed1e4552974baaef4b4e.svg ~~no. let’s see here
https://discordapp.com/assets/e63c47fd56c7ed1e4552974baaef4b4e.svg
https://discord.com/assets/e63c47fd56c7ed1e4552974baaef4b4e.svg
these work both. (but dc doesn’t embed .SVGs)
did you just admit to using client mods
no this is a custom discord skin i got from the official discord staff
oh makes sense, i just had to check, carry on
the old one
was better fr.
(new one
arguably looks more sad than pleading if you’re not familiar with it)
the old one is way better
WRONG
candycorn lookin ass eyes
and only used by terminally online people being way too public with their exploits
They both suck
class names are now name_hash instead of -
yop

Did discord change everything again
yop
welp I can say goodbye to theme making
they made it easier apparently
@mortal mantle
yes 
..so you can .replace(/-/g, "_") ?
or what changed
then you will have to attend lectures and copy down every single thing the Prof will write for the next week for me

don't you need the ""? 🤔
try it :)
well I tried it on another selector in my css and it definitely needs the "" to work
show
hmm that actually works for classes but not other attributes as far as I can tell
other attributes may not but it does for classes
interesting, I think I'll change my class attribute selectors to that as it is cleaner
button[aria-label^=Send a gift] doesn't work without the ""
yes because "send a gift" is text and with spaces
oh yeah spaces break that
i think "" is "this is one value together, do not see anything in here as potential selectors or anything"
aka "this is just text, no selector, no link, just text"
even the comment thing is seen as text
yeah
I've always used the "" without giving it much thought but this will definitely make the css easier to read especially since I'm gonna be using a lot of class attr selectors from now on
i love your use of ^= though
class attr selectors are best
i feel like they impact performance a bunch but shhh, they will never break
if my discord becomes too slow to run on my overclocked 12700K and 3080 I'll think of optimizing
lol
I'm already abusing filter:blur, filter:drop-shadow, box-shadows and text-shadows, gradients..
I'm changing all attr back to class names
Because even the attr also don't work anymore
depends on what attribute you were using, a lot of people used "class-" but changing the - to _ or dropping it should fix like 98% of selectors
as far as I can tell hashes were regenerated and dashes became underscores but not a whole lot else changed with classnames
would recommend replacing with _ rather than dropping it, because then weird stuff may happen eg. class^=button would match button_123456 as expected, but will also match buttoncontainer_123456 (probably not what you intend)
true
hashes now aren't capitalized anymore
just replace - _
so only lowercases and numbers remain
epic
But well since I'm fairly busy today it's unlikely i will get many things fixed
what this?
vc
you too bbg

coolesding could you go through my theme and fix it 🥺🥺
I have been overworked for the past 6 months
rest
I can't afford it anymore in the near future ....
eep well
dont worry about your theme cutie
I was ready to release v2.0
maybe i will look at it soon
we can fix it together cutie, dont stress yourself
Ty ❤️
Idk if this will work
But I will give it a try when possible
doubt it would work with scss
will try
I just thought I want serverrings back and looked at its code.. what the hell
I'll write it from scratch easier than try to fix this mess
the og radial status was highly inefficient
i discovered that i could just use box-shadow in tandem with the platform indicator icons
the serverrings also; https://github.com/DiscordStyles/SoftX/blob/deploy/ServerRings.css
doesn't make any sense to do it this way
yeah that was my method
instead of having to do the cx cy thing like radial status
to be fair that's vomited out by this scss https://github.com/DiscordStyles/SoftX/blob/main/src/addons/_serverrings.scss
but still, pointless
og radialstatus was a warcrime to show to css coders
awful
same author, who clearly knows css but does the most backwards things with it
the serverrings css was awful though haha
what exactly does it do? do you have screenshots?
i might just remake it for you if i like it
I can do it myself easy
it just makes a configurable ring+glow around server icons based on selected/hovered/unread/mentioned
ohhh
the only css I'd like someone else to make is moving things into the titlebar lol
oh I think your code might still work
The only reason they would do that selector 40 times is to animate the entire sequence the server ring pops up
I only style it once for 40px
they are taking the height of the indicator on the left to determine the state, resize/move the indicator and color it, no animation
well there would be a transition if you use the softx theme as that has a transition var set
but it has nothing to do with the selectors used
yeah your 'Remove the header and place the window buttons inside the top bar' snippet worked just fine by changing a few - to _
well my vesktop isnt showing the discord titlebar so i cant officially fix it :(
i could take your word for it and just searchreplace
mine started working randomly at some point today
I dunno I had the same issue and I tried toggling it on and off, then after the first patch wave I decided to try again and it just worked
even though I saw nothing in the patches that would have anything to do with it
one small problem though, can't drag the window when [class^=typeWindows_]{height:0}
yes
i already asked if someone could add a theming attribute to detect if the window is maximized, i got positive feedback for the idea so it might get added soon when everything is fine again
I think I'll try to have the .typeWindows_ be a region somewhere but not one that pushes content down
position:fixed maybe
could probably just do html:is(IsMaximized) [class^=typeWindows_]{height:20px}
yeah I don't care about maximizing
I always use discord maximized
same, which is why i made it so you cant drag it
no need to drag if you are maxed
I run 3440*1440 with windows scaling 100%
to drag it you have to unmaximize, which would then show your bar again when it gets added
discord usually only takes a quarter of my screen
oh okay haha
making .typeWindows_ a small position:fixed box could work, might add some repeating diagonal gradient to indicate a dragger or something
for indicators i just use svg arrow
or another fun idea would have it be invisible but use cursor:move on it
average devilbro theme
devilbro makes themes??
yes

i was not ready for the global font weight change
font: "Comic Sans MS";
devilbro my beloved
what did he cook

fun fact: i have a theme for that as well, its 42 lines
i can do that background change in less than 20 lines
discord but you can see your desktop 
* { background : none !important; }
true vencord desktop
is it just me or the shop tab display code doesn't work
[href="/shop"]{display:none}
ty 🙏
it never works for me :C
Did you enabled transparancy in Vesktop settings ?
now i just need the ugly top bar gone :(
oh i fixed it
sometimes i hate vesktop
oh wait nevermind
grrrrr
even with the setting, it doesnt show the discord titlebar
which also means i cant theme it
Did you updated Vencord ? Like going into Vesktop tray icon and update
is it time for me to reinstall vesktop?
o good idea i used the installer in app
it worked since yesterday
If you have Vesktop 0.4.1 you just need to update Vencord from the tray icon
nope (devtools select element on)
i have 😭
ill reinstall, brb
💀 what is this w7 titlebar
it's drawing the os titlebar and app content in the same area? that's impossible
I DONT FUCKING KNOW
not fixed
guhh
Isnt it a Vesktop setting iirc ?
WHAT
???????????
probably you hard coded it in the config file
i never opened the config file, dont even know where it is 😭
@grand surge what do you need?
the theme of that website voiidiot sent?
yoppp
guh i dont even have that website anymore
anyone know how to remove that dark overlay and make it transparent?
.overlayBackground__86b78 {background:none!important;}
or you can set --profile-body-background-color to transparent in :root to remove all instances of that background being used
ty
i put this and its not working, did i write something wrong im pretty new to css
ok np
instead of transparent try hsla(0,0,0,0)
I just tried it and It worked~
still dont working anyway i gtg i will try later maybe in 2hrs
Hey can someone help me get the new classes for the [Hiding Miscellaneous Stuff] section? I can't figure it out for the life of me I just can't focus at all
i think there's 2 variables that form a gradient
you need to change both of them
i cant help you but nice theme lol
Thank you, it's borked now because of stupid asf Discord pressing a button
life of a theme dev 
Yeah
Anyways if anyone can help me out it would be great
every theme dev been busy working on their own stuff :(((
did you try this? https://syndishanx.github.io/Website/Update_Classes.html
I will when I get to a PC
How do i hide this crap :c
Why is this not working, i tried everything, using every class there is and also the !important thingy and the stupid shop button will not hide itself what am i doing wrong
[class^="channel_"] > div > [href="/shop"] /* store Button above DM List */
{
display: none !important;
}```
So how do you change the 2 variables then?
okay this works but for some reason quick css is not working and i had to put it into a theme...? is that because of the recent crap discord did with the app?
This may explain my problem. I was trying to hide the user overlay with --profile-body-background-color: transparent !important; and it wouldn't work when Damian said it works and I was putting it in quickcss
any% how to get permission sharing at #🎨-css-snippets?
Just finished horizontal server list instead waiting (idk who made this just found on random server) can post the fixed one 
just post it here for now
make something good and you will get it
change your root settings server-size, server-spacing,server-direction or server-alignment whatever your settings is, just fixed the visible stuff so not full fix but its just work.
Topserverlist aka HorizontalServerList just edited for myself 
same way you're doing it
just .theme-dark {
and set the variables to transparent
you'd have to find their names thiugh
well i didnt made that so i left as it
is there like a css line for like when you press a keybind it disables all themes or is it plugins
or maybe even from developer console
when i try adding the blur effect to the user profile background the switch user tab just glitches out, anyone have idea how to fix?
.userProfileInnerThemedNonPremium__3d0a6 {
backdrop-filter: blur(10px) !important;
}
code if you want ig
I dont know if i can post that here, but ClearVision need a CSS fix, but the fix i had is broken, can someone help ?
.theme-dark [class*=container]:has([aria-label*="able Game Activity"]) [class*=withTagAsButton> {
min-width: calc(100% - 122px);
}
the fix i have, and i lost the fix for spotify background :/
discord update the minified css name- to name__ and the random suffix also updated.
if the clearvision not using wildcard selector,. it takes a lot of time to fix it,.
so i have to edit all "-" to a "_" ? sorry im very noob in css
nah,. [class*="name-"] to [class*="name__"] if they use wildcard selector.
ok sorry but i dont understand ><
if they use like .userProfileInnerThemedNonPremium__3d0a6 it takes a lot of time to find the tag selector
ok so i have to wait someone fix the problem of clearvision
yes,.
thank you so much for this
seems to work more often with just _ instead of __ for me tho

hey yall if i were to attempt to fix a custom theme with very little css knowledge how would i go about this (i really like the vibrant glass theme but the creator isnt planning on fixing it and i have nothing better to do rn)
you can try this https://syndishanx.github.io/Website/Update_Classes.html
oh thx! ill see if it works, much appreciated
should fix most of any theme
anyone could help me with fixing this? its a bit broken after latest update
its supposed to make my spotify above the VC tab rather than under it
and this also seems to be broken, i used it to fix my issue where eeryone on phone would be in green color regardless of their status like this:
.container_b2ce9c {
width: 64px;
transition: 0.3s ease;
}
.membersWrap__90226 {
min-width: 0;
width: min-content;
}
.container_b2ce9c:hover,
.container_b2ce9c:hover .members__9f47b {
width: 250px;
}
.member_aa4760 {
max-width: unset;
}
fixed minified memberlist
to work with the new thing that made vencord completely not work for about a day
is quick css still broken i cant apply many of my snippets ?
no the code is
thats a lot of code
its pretty basic so what changed ? same for hidding as examplesuper reactions
try pasting the code into this website https://syndishanx.github.io/Website/Update_Classes.html
it updates the classes
dude i love you it worked :D how sick is this webiste omg
this fixed half my problem, it doesnt fix the other one tho. would you happen to know how to manually help me?
i found it inside the #🏥-vencord-support-🏥 channel so i gave it a try for some snippits and it worked
idk
if its an issue with the classes then yes if not then idk
give it a shot
i hope it will working there whas so much work and effort over longer time and on day to another dead :/
hopefully it does
idk about the @import ones tho
I was wondering if there is really any difference when using ^ or * in class selectors, I think the last one selects more stuff but idk if that happens in most cases
^ matches beginning only, * matches anywhere
can't use ^ for elements that have another class listed before for an example
ok I think I get it, I just don't usually check where elements are lol
bro i swear I LOVE this website
do you have the code for me? i want it too @sacred ice with spotify above
same, the website only updated one of two classes i needed changed
it fixed radial status which i love
nothing is more satisfying than sending a message like this
did i hear RADIALSTATUS?????
yes
send your import link
i forgor what that is
the link you use to have radialstatus
i might have a little present for you
(a present i have to fix apparently)
oh i just pasted the raw code into the quickcss
just send whatever you can fit
its offical fixed
i made it a css file if you wanna go over the whole thing
