Skip to main content

Getting Started

What ReactWP Expects

ReactWP is a WordPress starter where:

  • WordPress stays in charge of content and admin authoring
  • the React theme renders the frontend experience
  • the source code lives in src/
  • the runnable WordPress install lives in dist/

Requirements

Before starting, make sure your environment includes:

  • PHP 8.1+
  • Node.js 20.12.2+
  • tested with Node.js 24.14.0
  • npm available through your Node.js install
  • a MySQL or MariaDB database for WordPress
  • a local web server that can point its document root to dist/
  • an ACF PRO license for projects that rely on ACF PRO features and updates
  • an internet connection for npm run get:core

First Setup

  1. Open a terminal in configs/
  2. Install dependencies there if needed
  3. Run npm run get:core
  4. Configure src/core/wp-config.php
  5. Point your local server document root to dist/
  6. Run npm run build for a one-off build or npm run watch during development

npm run get:core downloads WordPress core into dist/ and refreshes the bundled ACF PRO copy unless REACTWP_SKIP_ACF=1 is set.

What That Setup Does

A few early setup details are important to understand:

  • src/ is where you edit the project
  • dist/ is the generated runnable WordPress install
  • npm run get:core downloads WordPress core into dist/
  • src/core/wp-config.php still needs to be configured manually

What Gets Built

ReactWP is edited in src/ and generated into dist/.

In practice:

  • src/themes/ becomes dist/wp-content/themes/
  • src/plugins/ becomes dist/wp-content/plugins/
  • src/mu-plugins/ becomes dist/wp-content/mu-plugins/

That means you should treat dist/ as generated output, not the place where you normally author project code.

First Boot Behavior

On the first boot, ReactWP seeds a minimal working site:

  • a front page named ReactWP 3
  • default language rows in Site settings
  • a starter primary menu location
  • a starter navigation menu assigned to that location
  • a static front page configuration
  • permalink structure

This behavior lives in src/mu-plugins/plugins/reactwp/template/inc/firstload.php.

Where To Customize First

The usual first files to touch are:

  • src/themes/reactwp/template/functions.php for project-level filters and payload extensions
  • src/themes/reactwp/js/inc/config/ for loader, transition, and template registry overrides
  • src/themes/reactwp/js/templates/ for page templates
  • src/themes/reactwp/scss/ for styling

If you want a cleaner visual starting point, one of the easiest first removals is the shipped starter screen stylesheet:

  • src/themes/reactwp/scss/templates/reactwp.scss

That file is imported directly by the Default and NotFound React templates, so you can replace or delete it without touching the base runtime styling in default.scss.

Once the site boots correctly, read these pages next:

  1. Project Structure
  2. Architecture
  3. Frontend Runtime
  4. Routing and Navigation