Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    F

    Frontstuff

    frontstuff.io · Personal blog · on HN since 2018

    Sarah Dayan writes about front-end development, especially CSS architecture, utility-first CSS, and handling money in JavaScript.

    Visit blogHN submissions
    Web DevelopmentProgramming
    What HN says

    HN commenters cite her posts as a Tailwind-friendly rebuttal to the idea that utility classes equal inline styles, and discuss her advice on avoiding tag selectors.

    Stats for nerds
    20HN people shared it
    16linked in comments
    286story points
    Aug 2023last shared
    2018people per year2023

    Top posts on HN

    1. 1
      How to Handle Monetary Values in JavaScript
      7 people · 137 points · first shared 2018 · 108 comments on HN
    2. 2
      In Defense of Utility-First CSS (2018)
      7 people · 99 points · first shared 2018 · 62 comments on HN
    3. 3
      Utility classes aren't the same as inline styles (2021)
      7 people · 48 points · first shared 2021 · 53 comments on HN
    4. 4
      How I dropped 250 KB of dead CSS
      1 person · 1 points · first shared 2018 · Discussion on HN
    5. 5
      Build a Shopping Cart with Vue and Dinero.js
      1 person · 1 points · first shared 2018 · Discussion on HN
    6. 6
      You need to stop targeting tags in css
      1 person · first shared 2022

    What HN people wrote when they linked it

    • yurishimoAug 2023

      I don't think is accurate. While it might not be built in currently, the same is also true of something like SASS or even plain CSS.

      The article describes a strategy for loading CSS in the most performant way given a variety of interconnected factors (mainly JS).

      You could generate the Tailwind file, and then split it when the media queries start (they're all grouped in order of screen size) with a small bash script into separate files as a part of your build process.

      You could have multiple build steps that analyze your component architecture and generate separate CSS bundles for each component. This is already done w/ most JS frameworks.

      If your argument is one of the final CSS file size, that is not an issue. Tailwind only generates classes that you write in your markup. Most Tailwind bundles I have seen, are dramatically smaller than their CSS counterparts, and it makes sense when you think about how CSS is written.

      Say you have a two UI elements; an article preview image and a user avatar. Say you want them to mostly display the same, but with some tweaks to the avatar to add a fancy filter on hover. Okay easy enough. Maybe you start with some sort of base mixin and then overwrite add behavior for the avatar. Over time, you add more and more tweaks to the avatar until one day, you get a call from the head of Design Department that the articles are getting their own special CSS filter. Okay, so now you extend the article. Over time the two continue to drift until…

    • likorteraJun 2022

      > The commit will now contain 10000 non html structure changes to an html

      It's an acceptable trade off. Nothing is perfect. In exchange you're guaranteed those changes only affect this markup, and not some other li > ul > a whatever somewhere else.

      > Might as well go back to doing inline styles

      No, it is not. This has been explained thousands of times anyone says "tailwind is like inline styles". You can do responsive, you're limited to a consistent subset of rules, minimal output css file, caching, etc, etc. For example, here [1] is an explanation why it is not the same, but there are thousands.

      By reading your answers I deduce you've not used it yet. And this is exactly what is being discussed here. Fanatics closed inward looking people will never like it, nor anything that defies what they've been taught for years. Like religion almost. You have to try it for real to see the benefits. It is not perfect, but the net result is very positive for a lot of people as you can see from the usage statistics. Just be a bit more open minded to new tech and give it a try. At least you'll understand why it is not the same as inline styles which is a pretty basic thing you understand after 1 hour of using it.

      [1] https://frontstuff.io/no-utility-classes-arent-the-same-as-inline-styles

    • le-markJul 2021

      I’m sorry but this discussion is startling. Currency calculations and accuracy are critical, why would anyone use this if there’s even a chance it gives incorrect results? Once you research the topic you’ll see why JavaScript based languages haven’t been used generally. There are solutions for currency math in js like dinero.js:

      https://frontstuff.io/how-to-handle-monetary-values-in-javascript

    • bengtanJul 2020

      > It takes care of carry over values in division, i.e. consider 1 dollar divided by 3, it'll return 3 currency instances with 34, 33, 33 as the values instead of 33.3333.

      I think the proper/common name for this is 'allocation', not 'division'.

      For example, see https://frontstuff.io/how-to-handle-monetary-values-in-javascript and look for the subheading 'Pitfall #3: Percentage vs. allocation'.

    • ayushnixSep 2022

      I came across this blog post which talks against styling HTML tags and using classes for performance reasons and scalability. I'm not sure if the impact is noticeable on web browsers, I'd love to see an objective comparison.

      https://frontstuff.io/you-need-to-stop-targeting-tags-in-css#performance-issues

    • sarahdayanApr 2018

      The amounts must be specified in cents, as floats can’t be relied upon to perform calculations. That was my #1 reason to design the library using solely integers. I wrote all about it here: https://frontstuff.io/how-to-handle-monetary-values-in-javascript

    Related

    Ben Frainbenfrain.com28 people

    Enduring CSS: writing style sheets for rapidly changing, long-lived projects

    Ben Frain
    Personal · last shared 2026
    CSS { In Real Life }css-irl.info22 people

    Aspect-ratio is great

    CSS { In Real Life }
    Personal · last shared 2024
    Dev.Operadev.opera.com159 people

    CSS: It was twenty years ago today

    Dev.Opera
    Company · last shared 2024
    A List Apartalistapart.com667 people

    The future of web software is HTML over WebSockets

    A List Apart
    Publication · last shared 2026
    Rachel Andrewrachelandrew.co.uk60 people

    HTML, CSS and our vanishing industry entry points

    Rachel Andrew
    Personal · last shared 2026
    Lea Veroulea.verou.me121 people

    Today’s JavaScript, from an outsider’s perspective (2020)

    Lea Verou
    Personal · last shared 2026
    Front-End Hackingmedium.com/front-end-hacking19 people

    How it feels to learn JavaScript in 2017

    Front-End Hacking
    Publication · last shared 2018
    Stubbornellastubbornella.org31 people

    Why I run my business like an open source project (2013)

    Stubbornella
    Personal · last shared 2026