{"slug": "stylus", "name": "Stylus", "category": "browsers", "category_name": "Browsers and extensions", "description": "Browser extension for applying custom CSS user styles to websites.", "recommenders": 5, "commenters": 9, "warners": 0, "score": 5.396, "rising": -1.64, "first": "2025-11-13", "latest": "2026-08-15", "why": "Recommended for applying custom CSS overrides to sites like YouTube and GitHub, and as a lightweight replacement for Stylish that stays among a minimal set of always-on extensions.", "why_is_quote": false, "has_verdict": true, "sentiment": {"recommend": 5, "neutral": 4, "compare": 0, "warn": 0}, "spark": [1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0], "listed": true, "loved": ["Site CSS overrides", "Quick fixes"], "caveat": "Requires CSS", "short_quote": "I installed Stylus (a Chrome extension) to change GitHub's syntax highlighting colors", "icon": true, "domain": null, "github_repo": null, "official_url": "https://github.com/openstyles/stylus", "pricing": "open source", "aliases": ["Stylus"], "verdict": [{"text": "Recommended for applying custom CSS overrides to sites like YouTube and GitHub,", "cites": [{"id": 736909168, "item_id": 46056823, "url": "https://news.ycombinator.com/item?id=46056823", "by": "Sammi", "date": "2025-11-26", "stance": "recommend", "quote": "I use the Stylus[0] extension with this style in order to fix it", "excerpt": "I use the Stylus[0] extension with this style in order to fix it: ytd-rich-item-renderer { max-width: 265px; } /* Show full length title instead of ellipsis cutoff at two lines. */ a.yt-lockup-metadata-view-model__title { display: inline !important; } [0] https://chromewebstore.google.com/detail/stylus/clngdbkpkpeebahjckkjfobafhncgmne?hl=en&pli=1", "context": "", "use_case": "fixing YouTube layout with custom CSS", "switched_from": "", "story": "Someone at YouTube Needs Glasses: The Prophecy Has Been Fulfilled"}, {"id": 760816656, "item_id": 47551041, "url": "https://news.ycombinator.com/item?id=47551041", "by": "7jjjjjjj", "date": "2026-03-27", "stance": "recommend", "quote": "I use stylus to apply \"*{border-radius: 0 !important;}\" to a bunch of sites", "excerpt": "I hate rounded corners. I use stylus to apply \"*{border-radius: 0 !important;}\" to a bunch of sites, including YouTube.", "context": "", "use_case": "custom CSS for sites", "switched_from": "", "story": "Make macOS consistently bad (unironically)"}, {"id": 768925587, "item_id": 48057849, "url": "https://news.ycombinator.com/item?id=48057849", "by": "ihatemodels", "date": "2026-05-07", "stance": "recommend", "quote": "I installed Stylus (a Chrome extension) to change GitHub's syntax highlighting colors", "excerpt": "You're solving a real problem, and despite beeing a bit broke ATM, I'd be willing to pay for a tool like this given the amount of time I spend on review. My current workflow: I use GitHub web to look at my commits and leave inline comments on the lines. Then I have Claude Code fetch all the comments and apply the changes or answer my questions. I don't always have multiple commitsn: sometimes it's just one big commit", "context": "solo developer", "use_case": "custom GitHub syntax colors", "switched_from": "", "story": "Show HN: Stage CLI \u2013 a tool to make reading your AI generated changes easier"}, {"id": 780787936, "item_id": 48799246, "url": "https://news.ycombinator.com/item?id=48799246", "by": "guilhermeasper", "date": "2026-07-05", "stance": "recommend", "quote": "until I discovered the Stylus extension and created an override for it", "excerpt": "That's what I used to do until I discovered the Stylus extension and created an override for it. I think the change should apply to both (desktop and mobile).", "context": "", "use_case": "custom CSS overrides", "switched_from": "", "story": null}]}, {"text": " and as a lightweight replacement for Stylish that stays among a minimal set of always-on extensions.", "cites": [{"id": 751710192, "item_id": 46981887, "url": "https://news.ycombinator.com/item?id=46981887", "by": "nipperkinfeet", "date": "2026-02-11", "stance": "recommend", "quote": "Stylus is a good alternative to Stylish.", "excerpt": "Stylus is a good alternative to Stylish. I keep my extensions to a minimum, and I turn off the ones I don't need until I need to use them. The only extensions I have turned on all the time are uBlock, Humble New Tab Page, and Stylus.", "context": "keeps extensions to a minimum", "use_case": "custom CSS styling", "switched_from": "Stylish", "story": "Chrome extensions spying on 37M users' browsing data"}]}, {"text": " It suits users comfortable writing their own small CSS rules, even quick hacked-together fixes.", "cites": [{"id": 760816656, "item_id": 47551041, "url": "https://news.ycombinator.com/item?id=47551041", "by": "7jjjjjjj", "date": "2026-03-27", "stance": "recommend", "quote": "I use stylus to apply \"*{border-radius: 0 !important;}\" to a bunch of sites", "excerpt": "I hate rounded corners. I use stylus to apply \"*{border-radius: 0 !important;}\" to a bunch of sites, including YouTube.", "context": "", "use_case": "custom CSS for sites", "switched_from": "", "story": "Make macOS consistently bad (unironically)"}, {"id": 784463120, "item_id": 49028945, "url": "https://news.ycombinator.com/item?id=49028945", "by": "sgc", "date": "2026-07-23", "stance": "neutral", "quote": "I use a 30-seconds-of-work horribly-hacked Stylus setting", "excerpt": "I use a 30-seconds-of-work horribly-hacked Stylus setting to make it a blue dot that can expand on hover: @-moz-document regexp(\".\") { / Insert code here... */ #credential_picker_container { width: fit-content !important; height: fit-content !important; } iframe[src^=\"https://accounts.google.com/gsi/iframe/select\"] { width: 10px !important; height: 10px !important; border-radius: 50% !important; background-color:blue", "context": "Firefox user", "use_case": "restyle Google sign-in popup", "switched_from": "", "story": "Selfie for sign-in: a new, easy way to access your Google Account"}, {"id": 736909168, "item_id": 46056823, "url": "https://news.ycombinator.com/item?id=46056823", "by": "Sammi", "date": "2025-11-26", "stance": "recommend", "quote": "I use the Stylus[0] extension with this style in order to fix it", "excerpt": "I use the Stylus[0] extension with this style in order to fix it: ytd-rich-item-renderer { max-width: 265px; } /* Show full length title instead of ellipsis cutoff at two lines. */ a.yt-lockup-metadata-view-model__title { display: inline !important; } [0] https://chromewebstore.google.com/detail/stylus/clngdbkpkpeebahjckkjfobafhncgmne?hl=en&pli=1", "context": "", "use_case": "fixing YouTube layout with custom CSS", "switched_from": "", "story": "Someone at YouTube Needs Glasses: The Prophecy Has Been Fulfilled"}]}], "praise": [{"label": "Site CSS overrides", "summary": "Commenters use it to restyle sites they dislike, from YouTube layouts to GitHub syntax colors.", "quotes": [{"id": 736909168, "item_id": 46056823, "url": "https://news.ycombinator.com/item?id=46056823", "by": "Sammi", "date": "2025-11-26", "stance": "recommend", "quote": "I use the Stylus[0] extension with this style in order to fix it", "excerpt": "I use the Stylus[0] extension with this style in order to fix it: ytd-rich-item-renderer { max-width: 265px; } /* Show full length title instead of ellipsis cutoff at two lines. */ a.yt-lockup-metadata-view-model__title { display: inline !important; } [0] https://chromewebstore.google.com/detail/stylus/clngdbkpkpeebahjckkjfobafhncgmne?hl=en&pli=1", "context": "", "use_case": "fixing YouTube layout with custom CSS", "switched_from": "", "story": "Someone at YouTube Needs Glasses: The Prophecy Has Been Fulfilled"}, {"id": 760816656, "item_id": 47551041, "url": "https://news.ycombinator.com/item?id=47551041", "by": "7jjjjjjj", "date": "2026-03-27", "stance": "recommend", "quote": "I use stylus to apply \"*{border-radius: 0 !important;}\" to a bunch of sites", "excerpt": "I hate rounded corners. I use stylus to apply \"*{border-radius: 0 !important;}\" to a bunch of sites, including YouTube.", "context": "", "use_case": "custom CSS for sites", "switched_from": "", "story": "Make macOS consistently bad (unironically)"}, {"id": 768925587, "item_id": 48057849, "url": "https://news.ycombinator.com/item?id=48057849", "by": "ihatemodels", "date": "2026-05-07", "stance": "recommend", "quote": "I installed Stylus (a Chrome extension) to change GitHub's syntax highlighting colors", "excerpt": "You're solving a real problem, and despite beeing a bit broke ATM, I'd be willing to pay for a tool like this given the amount of time I spend on review. My current workflow: I use GitHub web to look at my commits and leave inline comments on the lines. Then I have Claude Code fetch all the comments and apply the changes or answer my questions. I don't always have multiple commitsn: sometimes it's just one big commit", "context": "solo developer", "use_case": "custom GitHub syntax colors", "switched_from": "", "story": "Show HN: Stage CLI \u2013 a tool to make reading your AI generated changes easier"}]}, {"label": "Quick fixes", "summary": "Small hand-written rules are enough to fix annoying page elements.", "quotes": [{"id": 784463120, "item_id": 49028945, "url": "https://news.ycombinator.com/item?id=49028945", "by": "sgc", "date": "2026-07-23", "stance": "neutral", "quote": "I use a 30-seconds-of-work horribly-hacked Stylus setting", "excerpt": "I use a 30-seconds-of-work horribly-hacked Stylus setting to make it a blue dot that can expand on hover: @-moz-document regexp(\".\") { / Insert code here... */ #credential_picker_container { width: fit-content !important; height: fit-content !important; } iframe[src^=\"https://accounts.google.com/gsi/iframe/select\"] { width: 10px !important; height: 10px !important; border-radius: 50% !important; background-color:blue", "context": "Firefox user", "use_case": "restyle Google sign-in popup", "switched_from": "", "story": "Selfie for sign-in: a new, easy way to access your Google Account"}, {"id": 780787936, "item_id": 48799246, "url": "https://news.ycombinator.com/item?id=48799246", "by": "guilhermeasper", "date": "2026-07-05", "stance": "recommend", "quote": "until I discovered the Stylus extension and created an override for it", "excerpt": "That's what I used to do until I discovered the Stylus extension and created an override for it. I think the change should apply to both (desktop and mobile).", "context": "", "use_case": "custom CSS overrides", "switched_from": "", "story": null}]}, {"label": "Cross-browser", "summary": "Commenters report using it in both Chrome and Firefox.", "quotes": [{"id": 768925587, "item_id": 48057849, "url": "https://news.ycombinator.com/item?id=48057849", "by": "ihatemodels", "date": "2026-05-07", "stance": "recommend", "quote": "I installed Stylus (a Chrome extension) to change GitHub's syntax highlighting colors", "excerpt": "You're solving a real problem, and despite beeing a bit broke ATM, I'd be willing to pay for a tool like this given the amount of time I spend on review. My current workflow: I use GitHub web to look at my commits and leave inline comments on the lines. Then I have Claude Code fetch all the comments and apply the changes or answer my questions. I don't always have multiple commitsn: sometimes it's just one big commit", "context": "solo developer", "use_case": "custom GitHub syntax colors", "switched_from": "", "story": "Show HN: Stage CLI \u2013 a tool to make reading your AI generated changes easier"}, {"id": 788953456, "item_id": 49309591, "url": "https://news.ycombinator.com/item?id=49309591", "by": "chrismorgan", "date": "2026-08-15", "stance": "neutral", "quote": "I use Stylus in Firefox to manage such things", "excerpt": "> hit hide on the domains that I never want to see anything from You could convert this into content blocker filters for the likes of uBlock Origin: news.ycombinator.com##.submission:has([href^=\"https://example.com/\"]),.submission:has([href^=\"https://example.com/\"])+tr,.submission:has([href^=\"https://example.com/\"])+tr+.spacer (You can append `:style(color:orange)` or such to apply a different style instead of hiding", "context": "", "use_case": "user stylesheets", "switched_from": "", "story": "Ask HN: How do you keep up with HN these days?"}, {"id": 784463120, "item_id": 49028945, "url": "https://news.ycombinator.com/item?id=49028945", "by": "sgc", "date": "2026-07-23", "stance": "neutral", "quote": "I use a 30-seconds-of-work horribly-hacked Stylus setting", "excerpt": "I use a 30-seconds-of-work horribly-hacked Stylus setting to make it a blue dot that can expand on hover: @-moz-document regexp(\".\") { / Insert code here... */ #credential_picker_container { width: fit-content !important; height: fit-content !important; } iframe[src^=\"https://accounts.google.com/gsi/iframe/select\"] { width: 10px !important; height: 10px !important; border-radius: 50% !important; background-color:blue", "context": "Firefox user", "use_case": "restyle Google sign-in popup", "switched_from": "", "story": "Selfie for sign-in: a new, easy way to access your Google Account"}]}, {"label": "Stylish alternative", "summary": "Recommended as a good alternative to Stylish and kept enabled by a minimal-extension user.", "quotes": [{"id": 751710192, "item_id": 46981887, "url": "https://news.ycombinator.com/item?id=46981887", "by": "nipperkinfeet", "date": "2026-02-11", "stance": "recommend", "quote": "Stylus is a good alternative to Stylish.", "excerpt": "Stylus is a good alternative to Stylish. I keep my extensions to a minimum, and I turn off the ones I don't need until I need to use them. The only extensions I have turned on all the time are uBlock, Humble New Tab Page, and Stylus.", "context": "keeps extensions to a minimum", "use_case": "custom CSS styling", "switched_from": "Stylish", "story": "Chrome extensions spying on 37M users' browsing data"}]}], "caveats": [{"label": "Requires CSS", "summary": "Fixes are user-written CSS, sometimes described as hacky.", "quotes": [{"id": 784463120, "item_id": 49028945, "url": "https://news.ycombinator.com/item?id=49028945", "by": "sgc", "date": "2026-07-23", "stance": "neutral", "quote": "I use a 30-seconds-of-work horribly-hacked Stylus setting", "excerpt": "I use a 30-seconds-of-work horribly-hacked Stylus setting to make it a blue dot that can expand on hover: @-moz-document regexp(\".\") { / Insert code here... */ #credential_picker_container { width: fit-content !important; height: fit-content !important; } iframe[src^=\"https://accounts.google.com/gsi/iframe/select\"] { width: 10px !important; height: 10px !important; border-radius: 50% !important; background-color:blue", "context": "Firefox user", "use_case": "restyle Google sign-in popup", "switched_from": "", "story": "Selfie for sign-in: a new, easy way to access your Google Account"}, {"id": 736909168, "item_id": 46056823, "url": "https://news.ycombinator.com/item?id=46056823", "by": "Sammi", "date": "2025-11-26", "stance": "recommend", "quote": "I use the Stylus[0] extension with this style in order to fix it", "excerpt": "I use the Stylus[0] extension with this style in order to fix it: ytd-rich-item-renderer { max-width: 265px; } /* Show full length title instead of ellipsis cutoff at two lines. */ a.yt-lockup-metadata-view-model__title { display: inline !important; } [0] https://chromewebstore.google.com/detail/stylus/clngdbkpkpeebahjckkjfobafhncgmne?hl=en&pli=1", "context": "", "use_case": "fixing YouTube layout with custom CSS", "switched_from": "", "story": "Someone at YouTube Needs Glasses: The Prophecy Has Been Fulfilled"}]}], "who": [{"by": "sgc", "context": "Firefox user", "url": "https://news.ycombinator.com/item?id=49028945", "date": "2026-07-23"}, {"by": "ihatemodels", "context": "solo developer", "url": "https://news.ycombinator.com/item?id=48057849", "date": "2026-05-07"}, {"by": "nipperkinfeet", "context": "keeps extensions to a minimum", "url": "https://news.ycombinator.com/item?id=46981887", "date": "2026-02-11"}], "tags": ["for YouTube customization", "for Firefox users", "for Chrome users", "for developers"], "use_cases": ["user stylesheets", "restyle google sign-in popup", "custom css overrides", "custom github syntax colors", "custom css for sites", "custom css styling"], "compared": [{"slug": "ublock-origin", "name": "uBlock Origin", "co": 4, "switched_from": 0, "switched_to": 0}, {"slug": "firefox", "name": "Firefox", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49308059", "title": "Ask HN: How do you keep up with HN these days?", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49026482", "title": "Selfie for sign-in: a new, easy way to access your Google Account", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48796845", "title": "item 48796845", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48050732", "title": "Show HN: Stage CLI \u2013 a tool to make reading your AI generated changes easier", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47547009", "title": "Make macOS consistently bad (unironically)", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46973083", "title": "Chrome extensions spying on 37M users' browsing data", "mentions": 1}], "sentiment_by_month": {"2025-11": {"neutral": 2, "recommend": 1}, "2025-12": {}, "2026-01": {}, "2026-02": {"recommend": 1}, "2026-03": {"recommend": 1}, "2026-04": {}, "2026-05": {"recommend": 1}, "2026-06": {}, "2026-07": {"recommend": 1, "neutral": 1}, "2026-08": {"neutral": 1}, "2026-09": {}, "2026-10": {}}, "quotes": [{"id": 788953456, "item_id": 49309591, "url": "https://news.ycombinator.com/item?id=49309591", "by": "chrismorgan", "date": "2026-08-15", "stance": "neutral", "quote": "I use Stylus in Firefox to manage such things", "excerpt": "> hit hide on the domains that I never want to see anything from You could convert this into content blocker filters for the likes of uBlock Origin: news.ycombinator.com##.submission:has([href^=\"https://example.com/\"]),.submission:has([href^=\"https://example.com/\"])+tr,.submission:has([href^=\"https://example.com/\"])+tr+.spacer (You can append `:style(color:orange)` or such to apply a different style instead of hiding", "context": "", "use_case": "user stylesheets", "switched_from": "", "story": "Ask HN: How do you keep up with HN these days?"}, {"id": 784463120, "item_id": 49028945, "url": "https://news.ycombinator.com/item?id=49028945", "by": "sgc", "date": "2026-07-23", "stance": "neutral", "quote": "I use a 30-seconds-of-work horribly-hacked Stylus setting", "excerpt": "I use a 30-seconds-of-work horribly-hacked Stylus setting to make it a blue dot that can expand on hover: @-moz-document regexp(\".\") { / Insert code here... */ #credential_picker_container { width: fit-content !important; height: fit-content !important; } iframe[src^=\"https://accounts.google.com/gsi/iframe/select\"] { width: 10px !important; height: 10px !important; border-radius: 50% !important; background-color:blue", "context": "Firefox user", "use_case": "restyle Google sign-in popup", "switched_from": "", "story": "Selfie for sign-in: a new, easy way to access your Google Account"}, {"id": 780787936, "item_id": 48799246, "url": "https://news.ycombinator.com/item?id=48799246", "by": "guilhermeasper", "date": "2026-07-05", "stance": "recommend", "quote": "until I discovered the Stylus extension and created an override for it", "excerpt": "That's what I used to do until I discovered the Stylus extension and created an override for it. I think the change should apply to both (desktop and mobile).", "context": "", "use_case": "custom CSS overrides", "switched_from": "", "story": null}, {"id": 768925587, "item_id": 48057849, "url": "https://news.ycombinator.com/item?id=48057849", "by": "ihatemodels", "date": "2026-05-07", "stance": "recommend", "quote": "I installed Stylus (a Chrome extension) to change GitHub's syntax highlighting colors", "excerpt": "You're solving a real problem, and despite beeing a bit broke ATM, I'd be willing to pay for a tool like this given the amount of time I spend on review. My current workflow: I use GitHub web to look at my commits and leave inline comments on the lines. Then I have Claude Code fetch all the comments and apply the changes or answer my questions. I don't always have multiple commitsn: sometimes it's just one big commit", "context": "solo developer", "use_case": "custom GitHub syntax colors", "switched_from": "", "story": "Show HN: Stage CLI \u2013 a tool to make reading your AI generated changes easier"}, {"id": 760816656, "item_id": 47551041, "url": "https://news.ycombinator.com/item?id=47551041", "by": "7jjjjjjj", "date": "2026-03-27", "stance": "recommend", "quote": "I use stylus to apply \"*{border-radius: 0 !important;}\" to a bunch of sites", "excerpt": "I hate rounded corners. I use stylus to apply \"*{border-radius: 0 !important;}\" to a bunch of sites, including YouTube.", "context": "", "use_case": "custom CSS for sites", "switched_from": "", "story": "Make macOS consistently bad (unironically)"}, {"id": 751710192, "item_id": 46981887, "url": "https://news.ycombinator.com/item?id=46981887", "by": "nipperkinfeet", "date": "2026-02-11", "stance": "recommend", "quote": "Stylus is a good alternative to Stylish.", "excerpt": "Stylus is a good alternative to Stylish. I keep my extensions to a minimum, and I turn off the ones I don't need until I need to use them. The only extensions I have turned on all the time are uBlock, Humble New Tab Page, and Stylus.", "context": "keeps extensions to a minimum", "use_case": "custom CSS styling", "switched_from": "Stylish", "story": "Chrome extensions spying on 37M users' browsing data"}, {"id": 736909168, "item_id": 46056823, "url": "https://news.ycombinator.com/item?id=46056823", "by": "Sammi", "date": "2025-11-26", "stance": "recommend", "quote": "I use the Stylus[0] extension with this style in order to fix it", "excerpt": "I use the Stylus[0] extension with this style in order to fix it: ytd-rich-item-renderer { max-width: 265px; } /* Show full length title instead of ellipsis cutoff at two lines. */ a.yt-lockup-metadata-view-model__title { display: inline !important; } [0] https://chromewebstore.google.com/detail/stylus/clngdbkpkpeebahjckkjfobafhncgmne?hl=en&pli=1", "context": "", "use_case": "fixing YouTube layout with custom CSS", "switched_from": "", "story": "Someone at YouTube Needs Glasses: The Prophecy Has Been Fulfilled"}, {"id": 735767734, "item_id": 45985483, "url": "https://news.ycombinator.com/item?id=45985483", "by": "mrandish", "date": "2025-11-19", "stance": "neutral", "quote": "A Stylus userstyles (CSS) mod called [AdashimaaTube]", "excerpt": "On Firefox you can block short form content from YouTube as easily as adding one extension or a few uBlock Origin filter lines. With a bit more work it's possible to fix a lot of other stuff using various browser extensions and userscripts on desktop/laptop. On mobile (Android) I use an app that patches the YT executable called \"Revanced Extended\" (https://github.com/inotia00/ReVanced_Extended). On set top (Android T", "context": "", "use_case": "running userstyles", "switched_from": "", "story": "Cognitive and mental health correlates of short-form video use"}, {"id": 734770210, "item_id": 45923138, "url": "https://news.ycombinator.com/item?id=45923138", "by": "thejosh", "date": "2025-11-13", "stance": "neutral", "quote": "things like Stylus/uBlock Origin filters", "excerpt": "WOW. Okay, this is really, really cool and is exactly my niche, as you mentioned it's kinda a combination of things like Stylus/uBlock Origin filters and custom filters/etc. This is really needed, as for example GitHub code preview is completely and utterly fucked, to put it lightly. Showing symbols, not being able to select code properly without weird visual glitches happening..... requires a bunch of scripts to fix", "context": "", "use_case": "custom site styles", "switched_from": "", "story": "Launch HN: Tweeks (YC W25) \u2013 Browser extension to deshittify the web"}]}