WordPress.com for Desktop
WordPress.com for Desktop is an Electron wrapper for Calypso, the new WordPress.com front-end. It works on Mac, Windows, and Linux.
Getting Started & Running Locally
- Clone this repository locally
- Update the Calypso submodule with:
git submodule initgit submodule update
- Inside
./calypso, runyarnto install all required packages - Inside
./calypso, create a./config/secrets.jsonfile and fill it with secrets - In the project root,
yarnwill download all the required packages - In the project root,
make buildto create the builds - Find the built apps in the
releasefolder in the project root
Need more detailed instructions? We have them.
Development
The app is split between Electron code and Calypso code, and so the development guide may help you find where to change stuff.
Running The End-To-End Test Suite
- Set the environment variables
E2EUSERNAMEandE2EPASSWORD. - Use
npm run e2eormake e2eto 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-unpackeddirectory - Linux:
npx electron /path/to/linux-unpacked/resources/app
MacOS Notarization
Per the current Electron docs, DMG signing is disabled by default as it will "lead to unwanted errors in combination with notarization requirements." Only the app bundle is zipped and submitted to Apple for notarization.
Extracting Published ZIP Archive in MacOS 10.15 (Catalina)
There is a known bug in which extracting notarized contents from a zip archive via double-click will lead to an invalid .app bundle that cannot be opened in macOS 10.15. Instead, the bundled app should be extracted via ditto:
ditto -x -k <zip archive> <destination folder>
Verification
Notarization status of an application bundle can be verified via the codesign, stapler and spctl utilities:
codesign --test-requirement="=notarized" --verify --verbose WordPress.com.app
xrun stapler validate WordPress.com.app
spctl -a -v WordPress.com.app
Building & Packaging a Release
While running the app locally in a development environment is great, you will eventually need to build a release version you can share.
Contributing
If this sparks your interest don't hesitate to send a pull request, send a suggestion, file a bug, or just ask a question. Don't forget to check out our CONTRIBUTING doc.
Do be aware that this repository is just for the WordPress.com desktop wrapper. If you have something to contribute for Calypso (the app that runs inside of the desktop wrapper and on WordPress.com) then please add it in the Calypso repository.
Troubleshooting
If you have any problems running the app please see the most common issues.
License
WordPress.com for Desktop is licensed under GNU General Public License v2 (or later).


