Live data from Hacker News

Ask HN: Dark mode for HN please?

news.ycombinator.com

301–310 of 469 posts

Re: Ask HN: Dark mode for HN please?

#301
post #99

Earlier quoted context omitted.

Please, for God's sake, don't screw it up. I can keep up with news on this site from a 15 kb/s shared satellite link when I'm out at sea. Except perhaps for the really big threads. I love the simple interface. It's text, it's simple, it's readable, and when I hit the spacebar, it scrolls down a page. No fancy fonts, no javascript, no nothing. I love HN for its simplicity and speed. Thanks for maintaining a good engin…

Well, if we want HN to follow best modern web practices, I recommend rewriting the whole thing with React/Node.js using TypeScript. Then, we can get a proper CSS framework in place like Material that will really allow us to get everything looking really good. I can design a cool looking loading screen that says "HN" while the JS is loading in the background.

cool but what will we do for next month?

Re: Ask HN: Dark mode for HN please?

#303

Earlier quoted context omitted.

There are many ways for end users to force dark mode without any change on HN. "invert page colors" chrome extension, for example, does a nice job. Not ideal, but good enough. I second the other commenter, don't do anything. Or get someone really good to help you!

There's a very solid Stylus theme for HN that I've been using as long as I can remember. Until just now I had honestly forgotten that this wasn't what HN looked like by default. https://userstyles.org/styles/113994/hacker-news-dark

Doesn't work without JS.

Re: Ask HN: Dark mode for HN please?

#304
post #99

Earlier quoted context omitted.

Please, for God's sake, don't screw it up. I can keep up with news on this site from a 15 kb/s shared satellite link when I'm out at sea. Except perhaps for the really big threads. I love the simple interface. It's text, it's simple, it's readable, and when I hit the spacebar, it scrolls down a page. No fancy fonts, no javascript, no nothing. I love HN for its simplicity and speed. Thanks for maintaining a good engin…

Well, if we want HN to follow best modern web practices, I recommend rewriting the whole thing with React/Node.js using TypeScript. Then, we can get a proper CSS framework in place like Material that will really allow us to get everything looking really good. I can design a cool looking loading screen that says "HN" while the JS is loading in the background.

don't forget to create an electron app for it

Re: Ask HN: Dark mode for HN please?

#305
post #69

Earlier quoted context omitted.

I'm on board with ceasing and desisting from screwing it up.

Also, not only should "dark mode" be the responsibility of the browser, it already is. There's plenty of plugins that do this and people that want it should use them. ( http://i.9ol.es/dark.png )

Sadly few browsers support extensions on mobile, which is possibly where dark mode is most useful.

Re: Ask HN: Dark mode for HN please?

#306

Earlier quoted context omitted.

"No fancy fonts, no javascript, no nothing." Truthfully, there is some Javascript. For example, onclick(). Voting without Javascript requires some extra effort.

True, but doesn't this even save bandwidth because it doesn't need to reload the whole page just to update that detail? Either way it still works without JS, which can't be said about most modern websites.

"... which can't be said about most modern websites."

While I understand and agree with your point, I have personally found this quoted portion to be a false assumption.

To me, "works" means I can retrieve the content of the page without using JS. If the websites we are discussing are ones where the primary purpose is reading, like HN, most will "work" for me without JS, so long as I do not rely on try using a "modern browser" to retrieve the content. In fact, I cannot even think of a single website meant for reading that I cannot read without a Javascript-enabled browser.

Re: Ask HN: Dark mode for HN please?

#307
post #187

Earlier quoted context omitted.

People can edit HN CSS with extensions. There is actually an extension that inject CSS into websites. So you can do that.

Such extensions do not work everywhere.

They work everywhere Firefox can run.

Re: Ask HN: Dark mode for HN please?

#308
Here is what I've been using through the excellent Stylus browser addon. It's derived from some of the Stylus themes for HN. (comment box text is black but not being a web guy I didn't fix it):

Screenshots: https://imgur.com/a/RhesGUo

        /*Base*/
        ::selection{background: #111; color: #F60;}
        body{background-color: #222; color: #CCC;}
        a:link{color: #8AD !important;}
        a:visited{color: #666 !important;}
        a.storylink{color: #dfdfdf !important;}

        /*Font*/
        :root{font-size: 16px; text-rendering: optimizeLegibility;}
        body, td, .admin, td, .subtext, td, input[type="submit"], .default, .admin, .title, .subtext, .yclinks, .pagetop, .comhead, .comment{font-family: sans-serif;}
        body,td,input,textarea,.default,.title,.pagetop{font-size: 1rem;}
        .comment{font-size: 0.9167rem;}
        .admin, .admin td{font-size: 0.875rem;}
        .yclinks, .comhead{font-size: 0.8333rem;}
        .subtext,.subtext td, .rank, font[size="1"]{font-size: 0.75rem;}
        .rank{font-weight: bold;}

        /*Input*/
        input, textarea{background-color: #333; border: 0.0625rem solid #555; padding: 0.1875rem;}
        input[type="submit"]{background-color: #444; padding: 0.5rem 1.5rem;}

        /*Vote Arrows*/
        .votearrow{display: none;}
        a[id^="up"]:before{content: "▲"; color: #666; font-weight: bold; padding: 0.1875rem;}
        a[id^="up"].nosee:before{visibility: visible; color: #F60;}
        a[id^="down"]:before{content: "▼"; color: #666; font-weight: bold; padding: 0.1875rem;}
        a[id^="down"].nosee:before{visibility: visible; color: #369;}

        /*Spacers*/
        tr.spacer{height: 0.1875rem !important;}
        #pagespace{display: none;}

        /*Backing*/
        #hnmain{background-color: #111;}
        .itemlist{background-color: #111; width: 100%; padding: 0.1875rem;}

        /*Header Bar*/
        #hnmain > tbody > tr > td[bgcolor="#ff6600"]{position: relative; background-color: #333; border: 0.1875rem solid #111; border-bottom: none; padding: 0.1875rem;}
        #hnmain > tbody > tr > td[bgcolor="#ff6600"] a{color: #F60 !important;}
        .pagetop{color: #888;}
        #hnmain > tbody > tr > td[bgcolor="#ff6600"] td:nth-child(2){position: absolute; top: 0.375rem; width: 100%; height: 0 !important; text-align: center; margin-left: -30px; padding-left: 30px;}
        .hnname{position: absolute; left: 30; top: 0.1875rem;}

        /*Syncopation*/
        .itemlist .athing:nth-child(odd), .itemlist .athing:nth-child(odd)+tr, .athing.comtr:nth-child(odd){background-color: #1E1E1E;}
        .itemlist .athing:nth-child(even), .itemlist .athing:nth-child(even)+tr, .athing.comtr:nth-child(even){background-color: #242424;}

        /*Item*/
        .itemlist .athing td{padding-top: 0.5rem;}
        .itemlist .athing+tr td{padding-bottom: 0.5rem;}
        .itemlist .athing .title:first-child{background-color: #111; border-bottom-right-radius: 0.375rem !important; text-align: center; padding-top: 0.375rem;}

        /*Fat Item*/
        .fatitem{padding-top: 0.625rem;}
        .fatitem form{margin: 0;}
        .fatitem .votelinks{padding: 0 0.375rem;}

        /*Coments*/
        .comment-tree{width: 100%;}
        .ind{background-image: repeating-linear-gradient(to right, #111, #111 39px, #222 40px);}
        .athing.comtr td{padding: 0;}
        .athing.comtr table{border-collapse: collapse;}
        .athing.comtr .default{padding: 0.625rem 2.5rem 0.625rem 0;}
        .athing.comtr .votelinks{padding: 0.625rem;}
        .athing.comtr .comment a{color: #369 !important;}
        .athing.comtr .comment .reply a{color: #8AD !important;}
        .comment{max-width: none;}
        .comment pre{max-width: 70vw;}
        .comment pre *{font-family: monospace;}

        /*Custom*/
        .subtext .hnuser:link,
        .comhead a:link,
        .subtext a:visited {
          color: #c678ddcc !important;
        }
        .age a:link,
        .age a:visited {
        color: #98be65cc !important;
        }

        /*Comment Colors*/
        .c00{color: #dddddd;}
        .c5a{color: #cecece;}
        .c73{color: #bebebe;}
        .c82{color: #aeaeae;}
        .c88{color: #9c9c9c;}
        .c9c{color: #888888;}
        .cae{color: #828282;}
        .cbe{color: #737373;}
        .cce{color: #5a5a5a;}
        .cdd{color: #000000;}

        /*New Comments Page*/
        .athing > .default{padding: 0.625rem 2.5rem 0.625rem 0 !important;}
        .athing > .ind+.votelinks{padding: 0.625rem;}

        /*Hover*/
        .itemlist .athing:hover, .itemlist .athing:hover td, .itemlist .athing:hover+tr td{background-color: #333;}
        .itemlist .athing:hover .rank{color: #369;}
        .athing.comtr:hover{background-color: #333;}

        body > center > table {
            width: 80% !important;
        }

Re: Ask HN: Dark mode for HN please?

#309

Earlier quoted context omitted.

Please, for God's sake, don't screw it up. I can keep up with news on this site from a 15 kb/s shared satellite link when I'm out at sea. Except perhaps for the really big threads. I love the simple interface. It's text, it's simple, it's readable, and when I hit the spacebar, it scrolls down a page. No fancy fonts, no javascript, no nothing. I love HN for its simplicity and speed. Thanks for maintaining a good engin…

"No fancy fonts, no javascript, no nothing." Truthfully, there is some Javascript. For example, onclick(). Voting without Javascript requires some extra effort.

This is JavaScript done right and worth keeping enabled.

Re: Ask HN: Dark mode for HN please?

#310

Earlier quoted context omitted.

When you click on a link to the news.ycombinator.com domain, what should happen if you prefer dark mode? And vice versa? In comparison, the pure-CSS ideas that some people are posting would work automatically if your browser supports dark mode, and would enlarge the (cached with long ttl) CSS file only very slightly.

Unfortunately, there are some of us who also like the solarized type light mode in HN more than dark mode, but we use dark mode at the system level because the OS light mode is awful. Pure CSS would be quite cool, but we'd probably also need a snippet of JS to add a button allowing to switch between light and dark mode. (There's probably a way to do it without JS that someone will hopefully comment too.)

They could put a preference in the profile page. But I think that switching the theme would be the browser's job.
Post reply on HN