WordPress.com for Desktop is an Electron wrapper for Calypso, the WordPress.com front-end. It works on Mac, Windows, and Linux.
The steps marked Production* can be omitted but should be taken when building the production version of the app.
- Clone the Calypso repository locally
- Install all root level dependencies with
yarn
- Export the environment variables:
- Production*:
CONFIG_ENV
(set torelease
) - Production*:
CALYPSO_SECRETS_ENCRYPTION_KEY
(it's a secret!)
- Production*:
- Production*:
yarn run build-desktop:secrets
- Build the app with
yarn run build
- Find the built apps in the
desktop/release
folder
To disable the auto-updater when testing locally, make sure to export the DEBUG
environment variable and invoke the Electron binary directly. For example on Mac:
export DEBUG='*'
./desktop/release/mac/WordPress.com.app/Contents/MacOS/WordPress.com
For a quicker and more efficient development experience, the application can be run in "development mode", which executes the application code directly (i.e. without building the app). This development mode can be ran against production WordPress.com webapp, or a local instance of Calypso.
- Use
yarn run dev
to run development mode and load production WordPress.com, OR - Boot Calpyso from the root of the Calypso repository with
yarn start
. Once Calypso is ready, the desktop app can be booted withyarn run dev:localhost
to load the local instance of Calypso.
Refer to the development guide for help with how the app works and how to change stuff.
- Set the environment variables
E2EUSERNAME
andE2EPASSWORD
. - Use
yarn run test:e2e
ormake e2e
to invoke the test suite.
To manually start each platform's pre-packaged executable used for end-to-end testing:
- Mac: Double-click
WordPress.com.app
(extract withditto
) - Windows: Double-click WordPress.com.exe in
win-unpacked
directory - Linux:
npx electron /path/to/linux-unpacked/resources/app
Notes on MacOS notarization can be found here.
While running the app locally in a development environment is great, you will eventually need to build a release version you can share.
If you have any problems running the app please see the most common issues.
WordPress.com for Desktop is licensed under GNU General Public License v2 (or later).