kraftbj / twentytwentyfour

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Twenty Twenty-Four

Welcome to the development repository for the default theme that will launch with WordPress 6.4.

2023

Twenty Twenty-Four is built as a block theme. The theme aims to ship with as little CSS as possible: our goal is for all theme styles to be configured through theme.json and editable through Global Styles. The theme development team will work closely with Gutenberg contributors to build design tools in the block editor that enable this goal.

Contributing

If you would like to contribute code, the list of open issues is a great place to start looking for tasks — but contributing is not just for developers. There are many opportunities to help with testing, triage, discussion, design, building patterns and templates, and more.

If you'd like to help with triage, let @luminuu and @MaggieCabrera know in WordPress.org's Slack instance. We'll help you get set up with the ability to add labels to issues and PRs.

Getting Started

Development

  1. Set up a WordPress instance, we recommend wp-env or Local as an alternative to docker. Alternatively you can use WordPress Playground to test the theme directly in the browser.
  2. Clone / download this repository into your /wp-content/themes/ directory.
  3. Install and activate the Gutenberg plugin.

Design

The theme is designed in Figma. You can contribute by designing one of the patterns planned for Twenty Twenty-Four.

As a default WordPress theme, it is important to leverage the existing design system wherever possible. That is the font sizes, color palette choices, and spacing presets. All patterns and templates will leverage this systems extensively.

Tips for Contributors

  • As stated above, a goal for the theme is to have as little CSS as possible. Much of the theme's visual treatments should be handled by the Block Editor and Global Styles. As a general rule, if multiple themes would benefit from the CSS you're considering adding, it might reasonably be provided by Gutenberg instead. Let's include clear code comments for any CSS we do include.
  • Similarly, let's refrain from building any custom-built PHP or JavaScript-based workarounds for functionality that might reasonably be provided by the Block Editor, let's keep the code simple to help with future maintenance.
  • In accordance to those last two bullets, this theme has no required build process.
  • If you've helped contribute to the theme in any way, you deserve credit! Folks will be updating CONTRIBUTORS.md periodically with names of contributors, but feel free to open a PR or issue if we leave someone out.

Requirements

  • Gutenberg plugin (latest)
  • WordPress 6.4+
  • PHP 7.0+
  • License: GPLv2 or later

Some theme features / PRs may require Gutenberg trunk and will be described or tagged accordingly.

Testing

Optionally, to run tests locally, you will also need:

  • Node.js
    • It's recommended that you install Node through nvm, since it's the tool used by the CLI to select the node version being used.
  • Composer

You can install the test-specific development dependencies by running npm i && composer install. The following test commands are then available:

  • npm run lint:css lints and autofixes where possible the CSS
  • composer run analyze [filename.php] statically analyzes PHP for bugs
  • composer run lint checks PHP for syntax errors
  • composer run standards:check checks PHP for standards errors according to WordPress coding standards
  • composer run standards:fix attemps to automatically fix errors

Resources

Timeline

The theme will be released with WordPress 6.4 and follow the key dates / milestones associated with its development schedule.

About


Languages

Language:PHP 49.3%Language:HTML 49.0%Language:CSS 1.3%Language:Shell 0.3%