Blog

Six Things You Should Know About WordPress Moving to JavaScript

Featured in JavaScript Weekly

 

In case you missed it, WordPress announced that they have been secretly working on a new project called Calypso that is written entirely in JavaScript. And we all lost our collective mind. Has WordPress, which runs as many as 1-in-4 websites (including this one), really ditched PHP for JavaScript?

1. WordPress is not (only) WP-Admin

At its core, WordPress is a content management system, or CMS. Like any CMS, there is an admin side for creating and editing content, and a display side that renders the website. These two sides can be connected in different ways. For WordPress, the connection has traditionally been that the content editing side (also known as “WP-Admin”) stores content in a MySQL database, and the website/blog side makes pages by filling in templates with that content.

2. WP-Admin is tightly linked to WordPress

The direct connection used by WP-Admin requires special access to the database. That means that WP-Admin needs to be installed right along side the WordPress site it manages. It also limits WP-Admin to managing that single WordPress site.

3. Calypso is a new admin tool

Calypso is a fundamental rethinking of what the admin side of a WordPress site can be. Rather than connecting directly to the MySQL database, Calypso manages content over the web using a special language known as a REST API. This difference allows Calypso to be installed anywhere and to connect to any WordPress site, or even multiple sites. (With the right username and password, of course.)

4. Calypso is also for reading

A core part of the WordPress.com experience is following other authors. That means that Calypso comes with a “reader” baked in. From the prospective of a WordPress site owner, this is a big departure from WP-Admin where the focus was on your content.

5. PHP-based WordPress isn’t going anywhere

Calypso doesn’t really do much without a WordPress site to talk to. If you open the app (or download the source code and run it), you’ll be greeted by a very nicely-designed webpage asking you to sign in to a WordPress site. That’s because Calypso isn’t a CMS. It’s an admin tool that can talk to any CMS that speaks the right language (that is, has a compatible REST API). And right now, the only CMS that speaks that language is good old (PHP-based) WordPress.

6. Neither is WP-Admin

In its current form, Calypso is an alternative to WP-Admin, not a replacement. Whether it eventually replaces WP-Admin is up to the community of contributors to the WordPress (.org) project. The big sticking point is likely to be third-party plugins. Although you can enable/disable and update plugins using Calypso, many plugins extend WP-Admin to add their own settings pages.

Conclusion

Calypso is a truly exciting project. When we open sourced the Sprintly Kanban project, we were motivated by the lack of large open-source React projects. With WordPress moving to JavaScript, it’s great to see Automattic (the company that owns WordPress.com) open sourcing an even larger React project. There is enormous potential for the developer community to learn and grow together. 

For the WordPress CMS, Calypso might forever remain an alternative interface. But, we may see other CMS’s learn to speak Calypso’s language. We may even see an entirely-new Calypso-compatible CMS that’s written entirely in JavaScript. Maybe even from Automattic. And we will all lose our collective mind.


Also published on Medium.