We need a "large fonts" and "small fonts" theme to ship with Discourse

No news, user selectable theme components is probably going to land for next release.

1 Like

Ok! Let me know if you need some real world scenario betatesting of the large font theme.
I have the perfect people to try it out. Experienced forum users with eyesight accessibility challenges.

5 Likes

Oh cool thanks for this info

@awesomerobot we are going to want to revisit this at some point. I wonder, does it make sense to move to REM/EM based font sizing so making this theme becomes trivial?

Our px based styling makes getting a polished version of a large font theme a bit of a nightmare to say the least.

3 Likes

Agree 1000% — I think we’d do a REM based system, then you’d be able to change one variable and scale everything proportionately. I think this is something we can get accomplished in the nearish future.

8 Likes

I am not 100% sure every single place text appears, should scale exactly the same?

There is also the legacy browser font size setting:

Mostly browsers use zoom these days which scales everything up, but there is the legacy font size selector, for what it’s worth…

I think it could probably be a mix. If someone wants to scale everything up proportionately and not think about it we can make it easy — but also having various controllable sub-sections is probably a good idea if I wanted to, for example, scale-up post text but leave admin text alone.

3 Likes

I think there are two font sizes we’re talking about here.

  1. General font size of entire site. Not necessary on desktop browsers since you can always zoom. Critical on mobile where you can’t scale by site. An rem based css will be perfect here.

  2. Font size of post texts vs ui elements. This should be relatively easier. Just a bunch of css overrides. I do this on my own sites.

In my experience it is #2 that is the prob, rarely #1 unless you have a strange mobile device. A lot of content site have a font size button the scale up content text size vs ui.

2 Likes

I think this is a great intro into rems/ems and pxs via @chriscoyier

The idea is that we get a much saner framework to work with as opposed to px everywhere that means you have to override px everywhere.

5 Likes

I do :heart: me some @chriscoyier

1 Like

But sizing the text relative to the module has the huge problem of having many different text sizes. Most of the time you don’t want different text sizes. You want to tweak the dimensions of the modules but keep text sizes consistent.

If we use EMs they are relative to the module (eg: post, header ) if we use REMs they are relative to root

Either way you fiddle with far less stuff to turn on big fonts.

3 Likes

Now that @awesomerobot finished the giant font size refactor this is super trivial.

html {
    font-size: 16px !important;
}

And fonts are large, you could probably even push it up to 17px.

14 Likes

That’s really ‘awesome’ guys, thanks!

Requested by my users recently and implemented in seconds: who can argue with that?!

6 Likes

Per-user font size selection is now part of Discourse. You’ll find the setting under your interface preferences.

https://github.com/discourse/discourse/commit/1ebd3dbbd02a684b139e74b53d0545f15d78a1af

18 Likes