Problem/Motivation
The Drupal core Bartik theme was released as part of Drupal 7 in January 2011, 9 years ago. It was great! It also stayed pretty much the same ever since and been included with Drupal 8 and even Drupal 9. The web moved forward a whole lot in 9 years and Bartik is not doing justice to Drupal anymore. It was great in 2011, it is not great anymore.
Proposed resolution
Drupal 9 needs a new default frontend theme. A new, modern, clean frontend theme, Olivero is being built in the contributed project https://www.drupal.org/project/olivero for inclusion in Drupal core. See http://lb.cm/olivero for a demo of Olivero.
Designs are at #3088378: Designs for new front-end theme for Drupal 9.
Olivero “alpha” criteria (Initial Core Inclusion)
Must-haves for the alpha release:
Features
- #3115420: Add search block(s) to the header
- #3115190: Configure and theme the Header Region using POC components
- #3115194: Configure and theme the body field using work pulled from POC
- #3117239: Theme inline Media types
- #3117242: Theme/style the Form elements
- #3118063: Theme Warning/Error Messages
- #3118065: Theme Pager/Pagination component
- #3118071: Theme Content/Article Listing - Node Teaser
- #3118086: Theme/Config Comments
- #3118088: Theme Tags/Categories component
- #3115160: Adding additional menu items overlapping with logo
- #3122990: Style administrative tabs
- #3151500: Style views grid row style plugin markup
- #3123836: Support route:<nolink> and route:<button> within Olivero menus
- #3152050: Style core's progress bar
- #3153060: Theme forum module
- #3153061: Theme Book module pages and menu
- #3135511: Create basic test coverage for Olivero theme
- #3153860: Theme and Configure the RSS Feed Views Block
Accessibility
- #3153334: All caps titles and Dyslexia
- #3153806: incorrect use of aria-labelledby in powered-by-drupal block
Design/Usability improvements
Bugs
- #3152535: Site breaks when primary menu has external link
- #3151586: Remove bullet of link action
- #3139046: Search block form outside of header is not styled properly
- #3165973: Text string "ago" should be translatable within theme file
Technical debt
- #3165971: Prefix final section of block template suggestions in olivero.theme
- #3165972: Add todo on form table header code block in theme file
- #3165453: Patch generation script unintentionally copying core's .prettierrc.json
- #3165448: Patch script generates *.pcss.css fies within the dist directory
- #3165454: Document source and license of polyfills
Core inclusion/Dependencies
- #3153009: Create "Wide" image style for standard profile - "Should have"
- The following PostCSS plugin
Olivero “beta” criteria
Must-haves for the beta release:
Features
- #3095736: Create content for Drupal's initial "Getting started" page (after minimal or standard profile installation)
- #3171156: How to handle new core "wide" image style within article content type
- #3172452: META: Convert codebase to use postcss-preset-env
Accessibility
Bugs
- #3153535: Don't introduce new uses of REQUEST_TIME, it is deprecated for removal before Drupal 10
- #3152382: Radios and checkbox not aligned with label in settings tray
- #3174065: XSS vulnerability in menu--primary-menu.html.twig
- #3174067: Avoid duplication in field--comment-body.html.twig
- #3174069: book-all-books-block.html.twig and book-tree.html.twig exist twice
- #3174105: Fix tests for Olivero in core patch
- #3174070: olivero_theme_suggestions_field_alter is too generic to enforce template
- #3165970: Teaser date/time format should not be hardcoded
Core inclusion/Dependencies
- #3124339: Add new image style to Standard installation profile and update CT Article Default display
- #3117698: Allow PostCSS Plugin “Px to Rem” in core for Olivero theme
Should have for core inclusion, assuming underlying support
Olivero “stable” criteria (After Core Inclusion)
At this point Olivero will be considered stable, and can be made the default front-end theme.
Must-have issues for stable release:
Features
- #3152545: Make fixed/fluid width page wrapping and aligning on wide screen optional via settings
- #3130726: Add layout--content-full+ small correction on layout--content-narrow css classes
Bugs
- #3149714: Audit form items within settings tray for visual inconsistencies
- #3165452: Override Drupal.theme.message to to make sure JS messages get rendered correctly
- #3165450: Ensure mobile menu is displayed when JS is disabled
- #3172957: Media library within Layout Builder modal looks unstyled
- #3173825: "User pictures in posts" and "User pictures in comments" don't seem to work
- #3174067: Avoid duplication in field--comment-body.html.twig
- #3174074: menu-local-task.html.twig contains invalid HTML
- #3174077: There is no indentation to indicate a comment is a reply to another comment
- #3174101: The comment on olivero_preprocess_menu_local_tasks no longer seems relevant
Technical debt
- #3124796: META: Adjust codebase to meet Drupal coding standards
- #3165449: Ensure all SVGs are optimized
- #3138850: Optimize svg of system-powered-by block
- #3151405: All css colors must be variable
- #3173898: [meta] JavaScript coding standards fixes
- #3158585: z-index issue when using webform wizard pages
- #3173007: [Code Review] Provide a BEM methodology to comments.pcss.css partial
- #3173008: [Code Review] Make .page-node-type-article a reusable component/class
- #3173010: [Code Review] footer.pcss.css - class clean up and add #0c0d0e and #171e23 as variables
- #3173012: [Code Review] header-search-wide.pcss.css and header-search-narrow.pcss.css adjustments
- #3173014: [Code Review] Address code feedback for the Header .pcss.css partials
- #3173016: [Code Review] Address code feedback for the Node .pcss.css partials
- #3173018: [Code Review] Remove .form-type as this prefix block element doesn't exist
- #3173022: [Code Review] Figure out a clean way to manage the style of the menu block in the sidebar region
- #3173019: [Code Review] Remove padding from .vertical-tabs__menu element
- #3173832: Ensure JS documentation matches standards
- #3173877: [meta] QA testing across multiple browsers
- #3174107: Add additional testing coverage
Olivero “Post-stable” criteria
Features
- #3086514: Investigate use of the changing color themes for Olivero
- #3127588: Theme language switcher
- #3145934: social media icons
Bugs
- #3152333: Dropdown arrow in settings tray not visible and properly aligned
- #3149863: jQuery UI "Leave Preview" dialog buttons not aligned
- #3129257: Fix order of the mobile tabs
Technical debt
- #3142857: layout class is not populated in some template + why using include
- #3153321: Olivero Utilities - debug.es6.js toggleLogo() use hardcoded logo path/name
- #3135518: Replace correct text in README.md file
- #3128132: Move burger and cross animated icons into single component
- #3165975: Remove unneeded todo
Accessibility
- #3116047: Windows High Contrast Accessibility Feedback
- #3153796: Initialize dynamic ARIA properties and states in Javascript, not HTML source
- #3153260: Standardize focus states across all controls
- #3153265: Skip link focus should not create layout shift
Design/Usability improvements
- #3153868: Design 404 "Page not found" and 403 "Forbidden/Access denied" pages
- #3151687: Entity reference with label formatter should not have separate styling
- #3144070: Extra space about taxonomy views
- #3092718: UX Issue in Search
- #3128163: H1 font size is really too big in some context
- #3129153: Improve theming of field-multiple-table fields
- #3088572: Very little content is visible on 13" Macbook screen (without scrolling)
Related Drupal Core Issues
- #3156244: Title variable isn't set by Syndicate block - so the link text is an unfinished sentence
- #3048848: Syndicate block outputs wrong feed URL
Issues required to set Olivero as the default front-end theme for core
- #3171149: Set article content type to use "wide" image style within standard profile
- #3171570: Remove custom hard-coding of the image style within article content type's full view mode
API changes
None.
Data model changes
None.
Release notes snippet
A new modern, clear frontend theme has been added to Drupal core called Olivero. (continue TBD)
Ability to Subtheme
Subtheming Olivero will not be initially supported, but we may include formal support in the future. That being said, if we find simple issues that can lead us toward making this more simple, we will commit them.
Timeline
Disclaimer: I have no idea what I'm doing as far as core timelines and tend to be optimistic in my estimations
- Now: As of June 18th, 2020, we're on alpha3. We plan on releasing alpha4 on the week of June 29. release.
- Week of July 3 First beta. The beta will concentrate on
- Accessibility
- Coding standards
- The process to get into core
- Every one to two weeks: new beta
Initial core inclusion is planned as beta (not default).