Choosing the JavaScript Framework for Gutenberg (~WordPress)

4 min read Original article ↗

I am starting this issue in light of the recent announcement of dropping ReactJS support by Matt.


Since I believe the community is moving in the right direction here — this issue is where one could share their thoughts about different JavaScript Frameworks for Gutenberg (that goes into the WordPress Core).

🛳 JavaScript Frameworks!

IMHO there are two prominent contenders here.

  1. VueJS
  2. Preact
  3. Other options (AngularJS, EmberJS, Polymer, MarkoJS, InfernoJS, Aurelia, etc.)

Just to kick-start the discussion, here're a few ideas off the top of my head.

⚡️ VueJS:

  • PRO: Beginner friendly
  • PRO: Proven track-record of success with Laravel
  • PRO: Way more popular as compared to Preact with a great amount of community support
  • PRO: More contributors than Preact
  • CONS: Key person dependency

🎯 I truly believe that WordPress can do a lot better with VueJS. VueJS has a huge set of followers and it's easier for beginners to adopt. This can also turn into a big win for WordPress if done right. I have used VueJS myself, in several projects, and I love it.

Also, a framework that's used outside of WP (such as Vue and its integration with Laravel), allows developers to use their experience in WP projects and non-WP projects.

There's already a large cross-over of Laravel/WP devs, so having the same js framework makes a lot of sense as those devs can contribute to help drive Laravel, Vue, and WP forward all at the same time.

⚡️ Preact:

  • PRO: Easier transition
  • PRO: Evolving community with about the same amount of monetary support as of VueJS
  • PRO: A subset of React based libraries would still be well supported with Preact and with compat.
  • CON: Transition could lead to messy code and confusion (for beginners)
  • CONS: Key person dependency

🤔 Resources:

🙌 Share Your Favorite JS Framework & the Reason Why?

Don't just share which JS framework you like but also share why and if time allows building an abstraction PR that shows how Gutenberg can be created with the JS framework of your liking?

Cheers!


UPDATE 2017-09-23

Plot Twist

Holly Molly! React is back in the business. WordPress did that? Not sure! It's 3 AM and I am super excited about this! What about you!

Relicensing React, Jest, Flow, and Immutable.js

Next week, we are going to relicense our open source projects React, Jest, Flow, and Immutable.js under the MIT license. We're relicensing these projects because React is the foundation of a broad ecosystem of open source software for the web, and we don't want to hold back forward progress for nontechnical reasons.

This decision comes after several weeks of disappointment and uncertainty for our community. Although we still believe our BSD + Patents license provides some benefits to users of our projects, we acknowledge that we failed to decisively convince this community.

In the wake of uncertainty about our license, we know that many teams went through the process of selecting an alternative library to React. We're sorry for the churn. We don't expect to win these teams back by making this change, but we do want to leave the door open. Friendly cooperation and competition in this space pushes us all forward, and we want to participate fully.

This shift naturally raises questions about the rest of Facebook's open source projects. Many of our popular projects will keep the BSD + Patents license for now. We're evaluating those projects' licenses too, but each project is different and alternative licensing options will depend on a variety of factors.

We'll include the license updates with React 16's release next week. We've been working on React 16 for over a year, and we've completely rewritten its internals in order to unlock powerful features that will benefit everyone building user interfaces at scale. We'll share more soon about how we rewrote React, and we hope that our work will inspire developers everywhere, whether they use React or not. We're looking forward to putting this license discussion behind us and getting back to what we care about most: shipping great products.

In my opinion, with MIT License and with the most active and biggest open source JS community behind it — React is the definite choice to stick with.

My vote is back with React now. — Faith in humanity restored.

Vote with 👍 instead of similar comments.