Core themes chat summary for September 4, 2019

These are the notes for the weekly Twenty Twenty meeting which takes place on Mondays. You can read the full transcript on the core-themes Slack channel (archive link) and find the meeting’s agenda here (also on Slack, for this first one).

Housekeeping

Thanks all around

The Twenty Twenty GitHub repo was made public on Friday, and there’s been a flurry of activity over the weekend with numerous issues posted and Pull Requests created. We’ll be working through them and will try to address all of them in time.

Deadline

It’s a tight deadline, with just two weeks left until Beta 1, so major topics other than those alredy in the agenda were encouraged to be kept to GitHub.

Discussion Topics

Fonts

Non-latin font fallbacks

A ”Support for non-latin font fallbacks” issue (#118) has been created, with calls for suggestions on which font fallbacks to include for each alphabet. There are lots of alphabets yet to be added, so suggestions are welcome. The issue could also use suggestions on how to best include the CSS for the different alphabets. @nielslange offered to take a closer look at that.

Whether to bundle a font

One proposed solution was to limit the font-family setting to serif and sans-serif. That led to a bigger discussion about whether a bundled font should be used, or if we should rely on a stack of system fonts like Twenty Nineteen. The arguments for using system fonts were that it reduces the size of the theme, and the page size of sites using it. The argument against is the user experience being uneven depending on which system the visitor uses. The discussion will be continued on GitHub.

Build Tools

Due to the tight deadline, the team has decided not to go overboard with using build tools for the theme.

Menus

The structure of the header menu locations was brought up by @joyously. Currently, the theme is intended to use three menu locations for the header. One for mobile, and two for desktop: a horizontal, traditional one, and one hidden behind a toggle. The arguments against the structure is that it could be confusing to the user, for two reasons:

  • The distinction between the two different desktop menus would not be clear
  • Users might not set a menu to the mobile menu location, and not understand why a menu is not displayed on mobile

A suggestion was made that the mobile menu can fall back to either the horizontal menu or the modal menu, if the mobile menu has not been set. The discussion will continue in a GitHub issue (#164).

Migration from jQuery to Vanilla JS

@fabiankaegy has created a PR for converting the currently jQuery based construct.js file to a Vanilla JavaScript one, using @wordpress/scripts. The discussion around it centered on whether @wordpress/scripts was needed. It was argued that including it adds a barrier of entry to new contributors, and that given the small amount of JavaScript needed to replicate the current jQuery functionality, @wordpress/scripts wasn’t needed. @fabiankaegy has since added a new PR without the build tooling, which can be found here: #163.

@audrasjb also raised concerns about removing the jQuery from the theme entirely, as the admin bar doesn’t function correctly when jQuery is not enqueued by the theme. This is described more in detail in an issue for Twenty Nineteen. @williampatton will try to look at the issue in Core and check if a fix is doable by 5.3. If a fix is not included in 5.3, it was decided that Twenty Twenty will enqueue jQuery when the admin bar is displayed, same as Twenty Nineteen.

Open floor

Due to the meeting already running 30 minutes long at this point, the open floor was skipped.

#meeting-notes