React, Flux, GraphQL, Hack, HHVM...? All of this and more!
Keystone.js is pretty much the first search term when you're googling with terms like JavaScript CMS or Node.js CMF. There are gazillions of other options out there, but after three years of tracking down the perfect Node.js CMS it's the one that keeps coming up.
PHP content management tools like WordPress are still the number one platform for creating content driven web sites. JavaScript has taken it's place in the lives of developers as build tools in the form of Webpack, Grunt or Gulp and as front end frameworks like React and Angular.js.
But for the core content management features of WordPress there is still no competition from the Node.js community. WordPress has had years to mature and reach a wide feature set that is not easy to gather. The generously funded blogging platform Ghost tried an undercut by focusing purely on blogging.
Timing was not right for Ghost as many chose to move to Medium for their need of simply "putting content out there" with an elegant hosted platform. This is why Ghost has been slow to pick up and looks like it's not going to be the JavaScript powered WordPress killer that the sensationalists are always loooking for.
One of the key pieces that a content management system should provide is a stable outlook. If you're building on content, you don't want your platform to be shaky. For startups where technology is the key driver, going for exotic technologies is fine - but for content many choose to go with WordPress because of it's ubiquity.
Keystone.js has been in development for a number of years and can be considered stable. The development of another interesting interesting option, Buckets.io has unfortunately been suspended. Relax CMS is an interesting fresh option, but the cards are still not showing whether it has the kind of staying power Keystone has.
In this constantly changing field, the core technologies that Keystone was built on have become so popular that they are unlikely to fade away very quickly:
This trio of technologies is now considered a staple, similar to what the LAMP (Linux, Apache, MySQL and PHP) were when they were rising in popularity. Other options like CouchDB and Koa.js exist and are considered superior by, but just as in the case of VHS vs. BetaMax - popularity is what makes tech strive.
Being quite an old Node.js project (starting July 2013!), the code does look somewhat alien if you've been working with the latest ES6 / ES6 syntax. As currently Babel and TypeScript are not a part of the Keystone.js developers every day toolkit. So nothing is perfect. Boo-hoo!
However the team is actively steering the project to the right direction as is shown in the recent move to change the administration interface to use React.js components (available from the 0.4.x versions).
Wrong! While WordPress.com already runs the fresh content management shell Calypso, WordPress itself is still far from being a pure JavaScript project. Behind the shell the LAMP powered WordPress is still running the show through a REST API. And in fact the REST API itself is not progressing as one might have understood.
With WordPress being now used for so much more than just blogging, it will take a long time for WordPress Calypso to reach the maturity level where the PHP product is now. This is not just about code, but the whole WordPress ecosystem including plugins and themes - they're what makes WordPress meaningful, not just WordPress itself.
For using Keystone as a CMF (Content Management Framework) to power websites it is already very far in it's capabilities. The flexible data model based on a NoSQL database is mature and capable enough. With a choice of many templating languages, developers can craft unique sites. And as an Express.js powered application, developers can use the power of the MVC framework to create custom functionalities.
Keystone.js is way behind WordPress in terms of ecosystem and brand awareness, it is already a powerful option for creating company websites and more with custom functionalities. But when it comes to being a fullblown JavaScript powered CMS/CMF - Keystone.js is that today, where as WordPress is just getting started.
Keystone.js is not perfect, but it has a good chance of becoming a de-facto tool like WordPress has.
Tweet