Improving site performance by shipping more CSS

github.blog

72 points by torutofu a day ago


meerita - 13 hours ago

I don't know how they perceive the performance. I see 41 network requests. That's 2.1 MB of CSS over the wire, blocking rendering and hurting painting and loading speed. There's 400 KB of Tailwind, 87 KB of general CSS, plus another 200 KB of other general CSS. They need to embrace functional CSS properly. I'm sure they could have a single CSS file under 80 KB that renders everything.

jenadine - 11 hours ago

Using GitHub everyday, I haven't really noticed an improved performance. Actually i'd say pages are becoming slower. Browsing issues with many comments or big PR has a terrible experience as not everything gets loaded

eviks - 14 hours ago

Unfortunately the original blog post introducing the great CSS-in-JS system being removed is not in the "Related posts" section, would be nice to compare the thinking in the two

efortis - 14 hours ago

There's room for improvement still. Currently, the production build is using long-dev class names. e.g. `DirectoryContent-module__Box_3__gl6dE` could be compiled to a shorter hash like `gl6DE3a2`.

If you use Vite:

  css: {
    modules: {
      generateScopedName: mode === 'production'
        ? '[hash:base64:8]'
        : '[name]__[local]___[hash:base64:5]',
      }
    }
low_tech_punk - 8 hours ago

You either "improve performance" or "ship more ___", never both.

Gualdrapo - 14 hours ago

Once (like a year ago or so) stumbled upon some person's post asking for someone to help them to "fix" some section at their website. It was done !important over !important over !important over !important. Said person was really convinced all it needed was another bunch of !important because apparently that was what ai spit for them, at least at that time

a11ce - 15 hours ago

Sometimes, [GitHub] posts a [blog post in which they move away from] some terrible [way of doing things] I've never heard before, and it's a weird indirect way to learn how awful their other [design choices] must be.

https://xkcd.com/2071/

surlyville - 5 hours ago

The performance must also improve because all iDevices on iOS < 16.4 can no longer view GitHub in Safari due to old WebKit. I blame Apple for not allowing Webkit to be updated independently of the iOS firmware.

Thankfully we now have the Reynard Browser (sideload/trollstore) that uses GeckoView so supports more modern web standards.

lloydatkinson - 12 hours ago

Any time I see criticism of CSS in JS, and a move to CSS modules, I get sad they didn’t just do a bit more research. You can have both, while also not shipping any JS runtime for CSS in JS! And with TypeScript support.

https://vanilla-extract.style/

parasti - 14 hours ago

And yet, there's been a glaring overflow bug on every repo page if the repo has a sponsor button on Firefox Android for months.

varun_chopra - 14 hours ago

Honestly, hats off to them. It's hard to get anything done with Copilot so I'm amazed they even managed to do this.

jay37184 - 14 hours ago

css-in-js? Rofl. Whats next? Html-in-js?

IndiaInfraNotes - 13 hours ago

[flagged]