WordPress Core Development Setup [Workshop]

Nimesh Agrawal

Most first-time Core contributors don’t stop because the code is hard. They stop because the afternoon disappears into installing tools and debugging a build that won’t run.

This hands-on workshop takes you from a laptop with nothing installed to a working WordPress Core development environment, and then to a real ticket. Bring a laptop and leave with a setup you can keep contributing from.

No prior Core contribution experience needed.


Prerequisites for the Core table

Here are the prerequisites for the Core table. The main goal is to get the big downloads done at home, not on venue Wi-Fi.

1. LOCAL ENVIRONMENT

Recommended: WordPress Contributor Toolkit, a single desktop app from the WordPress project. It bundles Git, Node.js, npm and the WordPress server (via WordPress Playground and SQLite), so attendees don’t need to install Git, Node.js, npm, Docker or MySQL themselves.

Download: https://github.com/WordPress/contributor-toolkit/releases/latest

Under “Assets”, pick one file:

  • macOS (Apple Silicon): .dmg
  • Windows (x64): .exe
  • Linux (x86_64): .AppImage

image.png

Please note:

  • The installers are 250 to 340 MB, so please download before the event.
  • There is no Intel Mac build yet. Intel Mac users can pair with someone at the table.
  • If macOS blocks the app, right-click it and choose Open.

Already have a WordPress-develop setup with Docker (Git, Node.js, npm, Docker)? Keep using it. Everything we do at the table works the same way.

2. ACCOUNTS & ACCESS

Please create all three accounts before the event. The Slack signup requires the WordPress.org account, so create that one first.

a) WordPress.org account: https://login.wordpress.org/register
Used for contribution props and for commenting on and attaching patches to Trac tickets.

b) GitHub account: https://github.com/signup
Used to open pull requests to wordpress-develop, where the automated tests run.

c) Make WordPress Slack: https://make.wordpress.org/chat/
Follow the steps on that page using your WordPress.org account, then join the #core channel.

LINK GITHUB TO WORDPRESS.ORG

This makes sure work done on GitHub is credited to your WordPress.org profile:

  1. Log in to WordPress.org and open https://profiles.wordpress.org/me/profile/edit/
  2. Go to the “Account & Security” tab and click “link your GitHub account”.
  3. On GitHub, authorize the WordPress.org Profiles app. It only gets read-only access to your public information.
  4. On GitHub, go to https://github.com/settings/emails and add YOUR-WPORG-USERNAME@git.wordpress.org as an email address. GitHub will mark it as “Unverified”. That’s expected, because it isn’t a real inbox. Leave it as it is. Your WordPress.org credit comes from the account link in steps 1 to 3.
  5. To check it worked, open https://profiles.wordpress.org/github:YOUR-GITHUB-USERNAME. It should redirect to your WordPress.org profile.

3. REPOSITORIES & ASSETS

There is nothing to clone manually. However, creating the first site in the Toolkit downloads the full wordpress-develop repository, runs npm install, and does a full build, which is the heaviest part of setup.

We’d strongly recommend attendees do this at home:
Open the Toolkit > Create a site > choose a folder > keep “WordPress Core” selected > let it finish.

image.png

Anyone who arrives with a working site can start on a ticket right away.

4. BEGINNERS / NON-TECHNICAL CONTRIBUTORS

First-time contributors are very welcome. Testing an existing patch or pull request and leaving a comment on the ticket is a real contribution and doesn’t require writing code. 

Helpful reading (optional):


Categories: