JavaScript Chat Summary for May 23rd – Make WordPress Core
Skip to content
Make WordPress Core
Welcome!
The WordPress
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
development team builds WordPress! Follow this site for general updates, status reports, and the occasional code debate. There’s lots of ways to contribute:
Found a
bug
bug
A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority.
Create a ticket
in the bug tracker.
Want to contribute?
Get started quickly with tickets marked as
good first bugs
for new contributors or join a
bug scrub
. There’s more on the
reports page
, like
patches needing testing
, and on
feature projects page
Other questions?
Here is a detailed
handbook for contributors
, complete with tutorials.
Communication
Core uses
Slack
for real-time communication. Contributors live all over the world, so there are discussions happening at all hours of the day.
Core development meetings are every Wednesday at
15:00 UTC
in the
#core
channel on
Slack
. Anyone can join and participate or listen in!
Below is a summary of the discussion from yesterday’s
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
chat (
agenda
):
Introducing a
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
module pattern to WordPress
omarreiss
helped lead the discussion and kick-started the conversation by opening a detailed and thoughtful
ticket
ticket
Created for both bug reports and feature development on the bug tracker.
in
trac
Trac
An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.
#40834
) which introduces modules, their goals and how we could go about using them in
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
. The discussion was around considerations specific to WordPress and a need for modularity was mentioned –
westonruter
called out this need for the
Customizer
Customizer
Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.
,  see
#30277
. Ideas for code that could be extracted into modules included quickedit, core date utilities and wp.media.view.FocusManager.
The decision was made to move in the direction of using Webpack (and ES6 imports) as our bundler of choice, and to work first on switching out browserfy in our current build chain.
Choosing a future JavaScript framework
Discussion started on choosing a new framework for use in core. The main frameworks discussed so far were
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
and
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
. Attendees shared their hope, goals and criteria for choosing a new framework and mentioned: stability, longevity, mature, well-adopted, proven in a WordPress context, accommodating to
Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
requirements, interoperability with existing code, architected to support predictable data flows and composability, alignment with efforts like Calypso,  composable,
extensible
Extensible
This is the ability to add additional functionality to the code. Plugins extend the WordPress core software.
, testable and ease of developer adoption.
kopepasah
promoted Vue.js, saying he found it “much more approachable and highly extensible” and also “Vue single file component is amazingly organized and easy bundle and build.” See https://vuejs.org/v2/guide/single-file-components.html.
rmccue
pointed out that the React core development philosophies match up to ours quite well: https://facebook.github.io/react/contributing/design-principles.html
afercia
raised accessibility and wanted to know which framework was best suited to offer support, specifically in handling cases where direct DOM access and manipulation is needed.
aduth
shared the reasoning behind the choice of React for the Gutenberg project: https://github.com/WordPress/gutenberg/tree/master/element#why-react
As anticipated, the decision was not settled in the meeting and discussion will resume in next week’s meeting. Currently, React appears to be the favored candidate. Please add to the conversation in the comments below, and join us for further discussion at our next meeting, scheduled for
May 30, 2017 at 13:00 UTC
For the full meeting notes, see the
Slack logs
javascript
summary
Share this:
Share on Threads (Opens in new window)
Threads
Share on Mastodon (Opens in new window)
Mastodon
Share on Bluesky (Opens in new window)
Bluesky
Share on X (Opens in new window)
Share on Facebook (Opens in new window)
Share on LinkedIn (Opens in new window)
WordPress has a few coding standards, and also
Accessibility coding standards
. They were proposed after the work done during
WordCamp
WordCamp
WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy.
US 2015, published for discussion, reviewed by anyone interested including committers and leads, and finally approved.
Based on the
Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
coding standards, all new or updated code released in WordPress must conform with the
WCAG
WCAG
WCAG is an acronym for Web Content Accessibility Guidelines. These guidelines are helping make sure the internet is accessible to all people no matter how they would need to access the internet (screen-reader, keyboard only, etc)
2.0 guidelines at level AA. Therefore, any new development tool, including
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
frameworks, should be carefully evaluated to make sure it doesn’t introduce accessibility barriers or makes more difficult getting at level AA.
Accessibility often requires getting to the DOM for simple DOM manipulation and focus management. The
WCAG specification
, the
WAI-ARIA specification
, and the
WAI-ARIA Authoring Practices
establish a solid set of rules, interaction models, and expected behaviors that are simple to meet with tools that offer an easy access to the DOM but a bit more complicated with tools that greatly abstract from the DOM.
Thinking at modern JavaScript frameworks, it’s a bit hard to distinguish potential limitations in the framework itself from the ones introduced by not-accessible implementations. Trying to clarify some of the accessibility concerns, there are some things that would be greatly preferable for accessibility. Not pretending this is a complete list. I’d also encourage anyone interested to participate and add relevant things not listed here.
ability to control and limit re-rendering as much as possible
ability and built-in patterns that encourage and educate to re-render only small bits of the
UI
UI
User interface
ability to easily get/set unique IDs on
HTML
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
elements even across different components
some sort of built-in focus management tool
a framework that encourages and educates to avoid divitis
a framework that educates developer to generate valid, semantic, HTML
I think many of the other concerns relate more to the implementation, so I’ll leave them out. Regardless of the framework, there will be the need to establish strict guide lines, development patterns, and best practices to be able to build beautiful, modern, and accessible JavaScript-based applications.
both 😀
Agree with this 100% Andrea.
Great points Andrea.
Regarding your points on re-rendering:
abilityto control and limit re-rendering as much as possible
ability and built-in patterns that encourage and educate to re-render only small bits of the
UI
UI
User interface
This is one of the
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
areas where
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
outshines
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
as it only re-renders components as needed:
In Vue, a component’s dependencies are automatically tracked during its render, so the system knows precisely which components actually need to re-render when state changes. (
source
Regarding your comment about
HTML
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
a framework that educates developer to generate valid, semantic, HTML
Unlike React (which is all
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
), Vue implements a template style which allows developers to separate HTML from JavaScript inside
single file components
. This is very advantageous for developers and designers familiar with HTML, also enabling non-
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
developers to contribute to the code base.
According to Vue:
Any valid HTML is also a valid Vue template (
source
I would like to weigh in on the role of
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
in the future of WordPress development. It seems to me that React has become an obvious choice because it’s convenient/shiny for developers who are building things at the leading edge, rather than it being a good fit for WordPress or its wider user base.
Don’t get me wrong, it is quite clear that React is a well maintained community-backed project with incredible appeal and credibility. But I find it an alarmingly bad choice for any
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
work, for the following reasons:
1) It’s Facebook
It is wedding WordPress to the work of a large corporation that in many ways shares an ethos that runs opposite to what WordPress stands for. This goes all the way down to the licensing that feels a bit smelly for an OSS project such as WordPress. Does anyone truly find it a 100% good fit on that grounds, and if it is anything less than a 100% why do we compromise? Personally, I don’t want to work with such a framework backed by Facebook, which to me are making the web a worse place on a number of levels.
2) It’s hostile to beginners
Working with react requires setting up complicated tooling and it introduces a very significant learning curve. We should make WordPress code easier to reason with, especially for people coming in. React is not beginner-friendly and just on that count alone should have been a non-starter for any core projects.
I don’t think I would have ever started coding on WordPress if I first had to figure out how to set up a development environment. Like many other people, I first started tweaking around with the simplest of text editors. But you can’t really tweak around with React based code without setting up local tooling. We are losing something really important here.
Think of the learning curve that is needed today to get anything interesting done:
html
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
css
php
javascript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
WordPress APIs
With React we are also adding another layer on top of that. It makes me so sad that things have gotten this complicated.
3) We don’t need React
There are other frameworks and libraries with the same great ideas around components and efficient rendering. React isn’t even the most performative of the lot and it’s quite a bloaty package. It hasn’t shown to be particularly performative on slow connections, less than stellar browsers or mobile devices. Why not another project, or better yet, why not start our own project that is designed from the ground up to be tailored to WordPress needs?
4) React forces itself upon developers
I really hate the idea of React running in the backend, because it means that as a developer, if I decide to run something else, the user will be loading up React and some other library to do similar things. On a single
admin
admin
(and super admin)
page, these are a just a handful of libraries that could be loading:
Underscores, backbone, jquery, React.
React is a biggish package. Then third party plugins might be adding in Vue.js, Angular etc. Nobody wants to see multiple libraries being enqueued that do largely the same things. That’s just awful and bogs down the client, which means developers are having to make a tough choice in adding bloat to a page or working with React against their will.
Feeling free to code with the tools you like has always been one of the better aspects of WordPress. Adding React constrains this freedom, not by compelling developers directly, but by forcing developers to move away from other approaches because of concerns about performance/bloat/elegance. And then you consider that every new javascript asset that is pushed to the client pushes the burden of a site’s performance on a user, based on the
capabilities
capability
capability
is permission to perform one or more types of task. Checking if a user has a capability is performed by the
current_user_can
function. Each user of a WordPress site might have some permissions but not others, depending on their role. For example, users who have the Author role usually have permission to edit their own posts (the “edit_posts” capability), but not permission to edit other users’ posts (the “edit_others_posts” capability).
of their device and their
network
network
(versus site, blog)
connection.
React also pretty much means adopting JSX which means transpilation is needed and as a matter of principle I think users should be able to play with the code without unnecessary tooling.
It sounds stark and dramatic, but for me, if React becomes a staple in WordPress core code base, it’s a little push that motivates me to leave the platform altogether. And I hate that I feel that way.
With Calypso and the
gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
project, two of the most exciting projects in my mind happening in WordPress, it is starting to seem inevitable that we are kind of adopting the React project through the backdoor. I don’t like that at all.
Much of what you’re describing is symptomatic of the growth of front-end tooling in response to increased demands of user interactivity in the browser. The sorts of experiences that projects like
Gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
are tasked with bringing to life. They are problems to be addressed, certainly, but ones which will be encountered irrespective of a framework decision.
But let’s frame this in a more positive light: What specific suggestions would you make to satisfy this need for a solid footing to build the rich, interactive experiences users have come to expect? The basis for this entire discussion is the claim that the current tooling is insufficient, and unapproachable in much the same manner you criticize
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
we are kind of adopting the React project through the backdoor
Note that your comment is in response to the summary of an open and recurring developer chat. Since the topic is not yet settled, I’d encourage you to attend the meeting on Tuesday to lend your thoughts, should you be available.
Thank you Andrew,
ones which will be encountered irrespective of a framework decision.
Raising the barrier to entry by necessitating the use of local tooling and other complexities introduced by
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
are not unavoidable things.
I’ve been using ESM modules with in-browser transpilation using SystemJS (which is also useful for loading any kind of asset on-demand). And that allows anyone one to tinker with the code directly without any additional setup steps. And while in-browser transpilation of JSX is possible too, it still is a construct that beginners have to hurdle.
Leaner alternatives like
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
are much easier to grok as well. Everything dealing with the component can be contained in a single file using the basic building blocks: plain looking
html
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
, css and
javascript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
. That is much easier to reason whether as a beginner or as a developer.
I think WordPress
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
should either adapt something like Vue or create something from scratch that takes the lessons learned from existing frameworks and tailors it to WordPress. Given that the future is javascript it should be worth the investment.
The question though, is it really in WordPress’ interest to develop and maintain a new and separate
javascript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
library?
I would say this lies quite a bit outside the scope of WordPress, even if it would be nice to have some javascript done the WordPress way.
I’m not sure many people have put a lot of thought into it, but perhaps we should at least explore it. I don’t think anyone has tried to articulate a list of opportunities. I think that people who’ve worked with
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
in depth might be very well placed to identify some of areas where creating our own framework would be advantageous. Perhaps the answer would be no, but it’s kind of strange we’re looking for something off-the-shelf without a second thought.
Over the years WordPress has adopted jQuery, TinyMCE, backbone and underscores. But this is really flowing from a time when
PHP
PHP
The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher
was WordPress developers biggest area of competence. Things have changed now and it is actually not that hard to create something like React or
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
now because we’ve identified the patterns that are most conducive to modern development. If it was hard to create a framework, there wouldn’t be over a dozen different existing libraries.
why not start our own project that is designed from the ground up to be tailored to WordPress needs?
I am strongly against this option because it would likely fail most of our requirements:
stability
no guarantee unless we make full
unit test
unit test
Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see
regression
coverage a priority from the beginning
longevity, mature, well-adopted
no, no, and no
proven in a WordPress context
probably yes
accommodating to
Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
requirements
possibly yes, though this is a huge amount of work
interoperability with existing code
probably not
architected to support predictable data flows and composability
probably not, look at WP’s existing data flows
alignment with efforts like Calypso
probably not
composable,
extensible
Extensible
This is the ability to add additional functionality to the code. Plugins extend the WordPress core software.
, testable
not unless they are made priorities from the beginning; shipping an initial version often overrides these considerations
ease of developer adoption.
requires excellent documentation
Satisfying all of these requirements means an enormous amount of man-hours, which we simply don’t have available. We’ll be far better served relying on an existing project here.
It seems quite obvious that a home-grown framework would not be able to meet the criteria that are designed to judge a selection of existing frameworks.
I take the point that it would be a massive time investment, but what you are saying is an argument against is also an argument for:
WordPress has no control over the direction of a project like
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
, but we do know with a 100% surety that
javascript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
is going to be
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
of all future WordPress development. Being able to shape the destiny of what will be a big component to that is hugely valuable. And if, hypothetically, WordPress start a javascript based project that has uses outside of WordPress, it could be a magnet to
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
developers. Right now we are merely adopting what’s popular out of convenience. Yes that’s practical and it allows developers to move faster in the short term, but I hardly think that it makes talented developers skilled in JS more interested in WordPress. A platform that is trailing doesn’t attract the top talent.
We could adopt
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
or fork Vue or something similar and get all the technical benefits of React while retaining much more authorship and without the bloat. And then we can explicitly focus on things that should be top of mind for WordPress and are not top of mind for the developers of React.
I can not agree more with Peter’s arguments against
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
. I’d personally like to see
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
in
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
, if some
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
framework is used.
I agree 100% here. I am sure I fall a bit far to one side here, but
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
is something to be avoided at this point, not adopted.
React brought a lot of interesting techniques and ideas to front end development.
Vue.js took that farther by making a faster, lighter, and easier to use library.
Working with
react
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
requires setting up complicated tooling and it introduces a
This statement is not true at all. You can use
Create-React-App
which makes it incredibly easy to start building a React app.
I believe
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
is better candidate for the WordPress ecosystem.
I would be happy to wholeheartedly research and propose on key sticking points for either frameworks should someone propose a list of areas they would like covered.
I would be happy to wholeheartedly research and propose on key sticking points for either frameworks should someone propose a list of areas they would like covered.
That would be great! The criteria listed in the original post could serve as a good starting point:
stability, longevity, mature, well-adopted, proven in a WordPress context, accommodating to
Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
requirements, interoperability with existing code, architected to support predictable data flows and composability, alignment with efforts like Calypso, composable,
extensible
Extensible
This is the ability to add additional functionality to the code. Plugins extend the WordPress core software.
, testable and ease of developer adoption
I believe VueJS is a very good option for the
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
— if we have-have to add it. But then again,
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
also has a lot of benefits. Can we vote “Both”? 😂🙈
LOL! If anyone was going to ask for both, I knew it had to be you Ahmad, the man you is always tryinh to bring all parties together! 😀
Hahahah! Guessed it right 🎯💯😂
I like ’em both. There are pros and cons to each one of them. Would be hard sell to leave one and go with the other.
I think vuejs is more attractive at first and easier to pick up but
react
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
is far more powerful and, I think, is more beneficial for front-end and wp-
admin
admin
(and super admin)
usage. So… my singular little vote = React.
react
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
is far more powerful
Can you provide some examples of why you think React is far more powerful than
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
I have used AngularJS (1 and a bit of 2) in a large production application for years and than switched to
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
, I think one of the great advantages of React come from the way it avoids templates at all.
Writing templates (or simili-
HTML
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
) like Angular, and
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
do can seem appealing and simple at first to “separate” logic but in the longer term, in addition to the fact that its a new language to learn, it shows its limits. (embedding dynamic components, passing components as props…, though I can’t speak a lot for VueJS because I’ve not used it extensively, I suppose it suffers from the same limits, template-based framework suffer).
That said, I can understand that some people could see JSX as another language, but it really isn’t another language. It’s essentially a sugar syntax to avoid calling `React.createElement()` manually.
And personally, I really appreciate things like
hyperscript
and
hyperscript helpers
as an alternative to JSX to keep everything as pure
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
. Though the React community seems to favor JSX for now, and I do think we should align more with the JS community instead of trying to reinvent the wheel (create our framework, avoid npm modules…), it creates more barrier than expected and makes WordPress more closed to the JS community and new developers than it should be.
My two major concerns are:
1. General and control.
2. Licensing.
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
is a Facebook product which makes me weary. They have done problematic things before and have a problematic attitude toward internet and publishing freedom and autonomy. I’m not sure adopting a Facebook codebase into
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
sends a message we want to send.
Separate from this it’s viral that the license of whatever framework is chosen matches that of WordPress. There’s been a lot of discussion around the React license and I know some legal department outright ban it’s use though I’m not well informed on the topic. This is worth at least a cursory investigation.
Sorry. Autocorrect made a mess of things. Point 1 should be “Ownership and control”.
Regarding the
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
license, the following article and comments contain a good deal of information on the subject:
Riad,
I would argue that with
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
you get the benefits of using both toolsets (templates and render functions), as Vue supports them both. In fact, Vue recommends a usage of both cases:
On a higher level, we can divide components into two categories: presentational ones and logical ones. We recommend using templates for presentational components and render function / JSX for logical ones.
For those templates which have a more presentational nature, this will enable less experienced developers to more easily contribute without a knowledge of
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
or JSX.
Lastly, regarding your comment on using templates is learning a new language:
in addition to the fact that its a new language to learn
Vue’s “template syntax” is not a new language much in the same way that
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
’s implementation of JSX is considered “syntactic sugar”.
Regardless of which framework is chosen, a crucial question IMHO is what becomes of the parts of the
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
that use BackboneJS. Media, themes,
customizer
Customizer
Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.
revisions
Revisions
The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision.
heavily rely on Backbone, and the recently introduced
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
client is also fully Backbone-based. Kind of nightmarish to imagine porting all these parts to
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
My vote is
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
. If you haven’t already, read the doc Vue did:
(note they solicited feedback from the
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
community in their comparison).
Here’s a couple reasons why I think Vue is a better fit for the WordPress project:
1. Licensing
Vue has a friendlier license (MIT) and thus aligns better with the WordPress project than React. I think the
open source
Open Source
Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL.
philosophy of WordPress is preserved better with Vue than React.
2. More developer friendly.
One of the things that has contributed to WordPress growth over the years is the relative ease in which people can get into the internals and build things with WordPress. Many a “developer” has cut their teeth via customizing “their” WordPress. Vue is more supportive of this ethos than React (just review the difference in documentation).
In everything else I think Vue and React are comparable and there are an equal number of fors/againsts – however for thorough-ness. When it comes to the requirement paragraph I think Vue meets most of those just as well as (and perhaps better in a couple cases) than React.
One concern I have about this decision is that regardless of conversations happening, and the invitation to participate, the conclusion seems foregone. Why? Investment of time and resources by WP stakeholders have already been made in significant things.
Gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
has been underway for the past year with React as its tool of choice. Then there’s the elephant in the room which is Calypso. It’s no secret that
some
(not all, some) of the primary people working on the new focuses are Automattic people and thus there is inherent bias towards using what they’ve already invested in.
For what its worth, I understand that. I would
expect
there to be vested interest in the outcome of this decision supporting the decisions
already
made by them years ago when they first joined the React bandwagon. Ultimately, though it leaves me wondering how much of this conversation really matters if in the end something other than React will simply not be accepted as a valid choice. If that’s the case, why have the conversation? Just acknowledge that
WordPress.org
WordPress.org
The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization.
adopts React because of Calypso and Gutenberg. Is any other option really on the table?
I was about to write a comment with the same wording as yours! I couldn’t agree more with you!
I think for the sake of taking a “fare” decision, choices of the past shouldn’t be taken into consideration (e.g. Calypso,
Gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
..).
I also think this decision is in the boundary of an “
hard choice
” as it is impossible to foresee what will happen to these
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
frameworks in 2-5 years.
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
and
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
are similar in performance, both are powerful, the main difference, for me, is the entry barrier, which could be important to attract more contributors to WordPress.
In the end, independently of the chosen framework, it will be important to bring the (actions and filters)
hooks
Hooks
In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.
to the JS world, which I think will make this choice less important…in the end it is
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
I don’t consider myself an expert in JS frameworks. I have worked with both in the past, and I’ve been using Vue consistently on all my latest frontend projects.
I worry about the tie to Facebook. From a birds-eye view, WordPress’s codebase having a strong association and dependency on anything Facebook does leaves a bad taste. What’s the bigger picture? Working on an open-web, “democratize publishing,” and inclusiveness are ideas that govern the WordPress Community. Facebook has not signed on to these lofty goals beyond lip service. Quite the opposite is true: Facebook’s business model benefits from hate-speech and Facebook does not seem to have the will actually to curb it on its platform.
Source:
Underpaid and overburdened: the life of a Facebook moderator
Also:
How Facebook flouts Holocaust denial laws except where it fears being sued
I have not used either
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
or
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
, but having gone through the getting started guide for each a few months ago, I can say that Vue seemed more appealing, and simpler and easier to use. React is just clunkier in almost every way, though as someone pointed out, perhaps it is more powerful in the end.
Beside that my only experience is with Backbone, which I definitely concur is not going to cut it for building modern web apps.
It ought to be Vue.js. The patent issues in
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
are ridiculous, and arguably drastically changes the
GPL
GPL
GNU General Public License. Also see
copyright license
nature of WordPress. Frankly, I predict a forking if it is React. The extremely shady and sociopathic nature of Mark Zuckerberg and thereby Facebook has been shown time and time and time again.
What happened the last time somebody asked Mark Zuckerberg to build part of their technology stack?
“They made a mistake haha. They asked me to make it for them.”- Mark Zuckerberg
“yea i’m going to fuck them…probably in the ear” – Mark Zuckerberg
“They ‘trust me'”…”Dumb #@&$s” – Mark Zuckerberg
Incorporating React would drastically limit the innovation that can be done upon WordPress’ codebase and platform by 3rd parties, as often the businesses built upon WordPress reasonably have / use patents.
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
is taking off, including as a valuable skill to have, and I highly recommend it. Its
open source
Open Source
Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL.
nature also fits much better with the
WordPress.org
WordPress.org
The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization.
culture, 3rd party developers, and the code contributing community.
I can only repeat what was said before me about
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
is easier to pick up for folks new to programming
Vue has the same benefits as
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
: can be used in mobile native using Weex, plus can parse JSX, whereas React can’t use normal template driven development, of which all of the current themes are using
plus the licensing and values. Using React in
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
WordPress would essentially mean that WordPress were totally okay with the culture that created React, and reading these replies, and the linked material, it’s… not good.
What I want to also emphasize is this point:
proven in a WordPress context
Why is it proven? Because Calypso and
Gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
are there and are written in React. Have any of the teams done a comparative analysis on that? Ie build it on React AND Vue AND Angular AND Backbone… ?
If not, then I fear this argument falls prey to the
texas sharpshooter logical fallacy
1. Let’s build something that will be Calypso / Gutenberg
2. Because we’re free to choose anything, let’s pick React, because it’s shiny, because the people working on Calypso / Gutenberg were familiar with React due to others (or some other reason)
3. Because no need to redo Calypso / React in other frameworks, those projects can be brought to maturity over the months / years
4. Use them as proof that they are proven in WordPress context
To avoid the following
“well, YOU build it in Vue”
argument, we don’t necessarily have the resources / time to do it ourselves. However what we’re doing is flagging up our issues. It’s also easy to say “well, just attend the next dev chat”, but work, life, timezones, etc usually get in the way. It’s exclusionary to dismiss people’s arguments because they couldn’t make the chat.
I’d like the front end framework to NOT be React for all of the reasons above.
It’d be nice if it was Vue.
I’m a large proponent of
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
, but was not always.
A Medium article – yes, seriously, and especially the comments from the creator of Vue – persuaded me towards Vue. I think it’s worth a read, especially for anyone who either hasn’t used Vue, or is more comfortable with
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
I would also vote in favor of
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
– it’s much easier to get started with Vue than
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
, Vue is also a very pragmatic-minded framework (less-opinionated which means more flexibility), and, as others have noted, it is not tied to an organization which may not align with WordPress’ goals.
Just my 2 cents:
If
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
is wanting to push the
REST API
REST API
The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”)
( which seems from an outside perspective to be the case ), why is it that core is choosing the view layer at all? I can see core recommending one ( “Hey, our devs like
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
/Angular/Choo” ) but I think instead of worrying about the
UI
UI
User interface
aspect that core should be focused on the
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
aspect and let the developers choose the best UI framework/lib for their use-case.
Here are two platforms that are directly or indirectly competing with WordPress as a platform now that WordPress has decided to embrace REST APIs.
Both of these platforms had/have locked in
UI
UI
User interface
choices and have lost favor as the UI landscape has changed drastically in the last 2-4 yrs.
Both of these platforms had/have locked in
REST API
REST API
The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”)
choices and they have lost favor as
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
choices have drastically changed in the last 1-3 years.
I believe if WP wants to compete in 5 years, it has to accept that these pieces (UI and API) are separate ones that should be broken into separate packages/modules/libraries/etc and solved on a per-website/application basis.
The push towards a REST API is crucial but with Falcor/GraphQL/Whatever is next changing the landscape of APIs even further, the more time spent on deciding how these two pieces should be solved together means less time that that decision is relevant.
I think in defense of
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
one might say this only covers the
admin
admin
(and super admin)
area. And you might also say that with the
REST API
REST API
The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”)
there has never been a freer time for developers to build themes and app on the front-end with the tools of their choice. But actually, with
gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
and the evolution of the
customizer
Customizer
Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.
it is clear that what were traditionally back-end components now show up on the front-end. And this is were utilizing React – which is a fairly heavy payload – introduces friction if you want to roll with something else.
But actually, with
gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
and the evolution of the
customizer
Customizer
Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.
it is clear that what were traditionally back-end components now show up on the front-end
I would say that is another reason that the
Core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
team should not recommend a
UI
UI
User interface
/front-end framework/stack. Those things are use-case specific and to choose/make one, in my mind, will pigeon hold WP into the X type of web platform instead of being The web platform.
If I as a developer that uses Core thinks that
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
is the right choice, it is because the application I am building needs it. If I just want to build a simple SPA, I shouldn’t be forced to use WP’s UI choice. Meteor tried this in the
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
world and it did not work out well for them.
I suppose what I am trying to say can be summed up as:
WP Core should focus on the platform/REST/
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
and let the UI be built however the UI needs to be built. In specific to the
Admin
admin
(and super admin)
Dashboard, it should be whatever the Core team that builds the Dashboard thinks is the best choice to integrate against the API, not what is best for the WP community at large to use on their projects.
The other night I was reading the docs for Solidity – the high-level language for building on top of the Ethereum blockchain – and while it’s a lot of new concepts and whole new language, I felt like I could do it. Why? It’s fairly similar to
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
and over the last 5 years or so I’ve gone from knowing some basic
HTML
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
to being a fairly advanced
PHP
PHP
The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher
and JavaScript developer.
Why? WordPress is why.
WordPress for me, like so many others is how I learned web development. WordPress is fairly easy to get started with, which made it easy to get started and gave me a safe way to slowly progress.
I think that adopting one of the most complex JavaScript frameworks both in terms of framework-specific syntax and tooling is a bad idea. It makes WordPress harder to contribute to, without significant advantages that are offered by alternatives.
I’m not going to bash
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
— React is very good stuff. But, let’s keep in mind that Facebook created React for Facebook developers. The level of skill needed to get a job at Facebook is pretty high. Do we want to impose a high bar before you can contribute to WordPress
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
? That feels like the reverse of our values.
It’s also important to keep in mind that we’re not talking about anyone’s plugins, themes or sites. You can and should use whatever is right for the job in your own work, including the latest and greatest. But we’re talking about WordPress core here.
As much as I don’t like Backbone I
almost
want to advocate that it remains the framework of choice beacuse it’s stable and simple. But, it’s so bad.
So I want to advocate for VueJS, and not beacuse I think it is a fantastic framework that I use a lot in my own work, but full disclosure I do. I don’t want to advocate for VueJS beacuse it’s lightweight and non-opinionated — if you want to use HTML to write HTML you can, if you want to use a JSX-like thing to write HTML you can.
My real push for VueJS is it’s fairly simple. I firmly believe that anyone who knows JavaScript can get from there to a dynamic VueJS component in an hour or so of learning. And BTW that’s without any build tools or anything. Yes, working with single-file components and ES6 imports makes it better, but requires build tools.
As an aside, I’d like to report from personal experience that KAdam White’s Node client works very well as a WordPress
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
layer for VueJS apps.
In summary, I wish to say nothing bad about React on a technical level, it’s super-powerful stuff. But let’s remember, this is WordPress, we’re not about the latest and greatest. We don’t rebuild from the ground up every few years. I don’t think that’s compatible with building for a massive, distributed ecosystem like this.
I think that’s OK. Let’s go with something a little bit less cool, that’s a lot easier to use, so we can continue to be easily accessible to new developers.
TL;DR VueJS does everything we need and leaves WordPress core just as easy to get started contributing to.
Josh,
I could not have said it better myself.
From a developer’s perspective, I have nothing bad to say about
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
. It is a very powerful tool that chooses a specific method of implementation. However, just as you mentioned, it requires a lot of knowledge in order to contribute, which can deter many beginners and potential contributors to WordPress.
I too advocate heavily for
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
, as it is much lighter and easier for a novice to jump in and start developing. Moreover, any person with knowledge of
HTML
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
can contribute without worry of having to learn
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
or JSX.
Spot on Josh. Spot on.
It’s worth noting that in relation to Calypso, other frameworks also offer the same opportunities when branching into other spaces like desktop applications and mobile applications. There are vue-based projects for desktop applications (see nuxt-electron to get something up quickly – it’s fun!) and weex is a vue-based alternative to
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
Native that uses an
Apache
Apache
Apache is the most widely used web server software. Developed and maintained by
Apache Software Foundation
. Apache is an Open Source software available for free.
license.
Do we have any idea of how we want the end user experience to be when extending wp-
admin
admin
(and super admin)
? By end user I mean developers who need to drop in either a quick settings page or a full fledge “control this pligin” section. The current settings
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
will likely need to be redone in order to fit which ever framework is decided upon, so that experience should be taken into account. Will the developer have to do it all in
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
, all
PHP
PHP
The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher
, or a mix of both? Understanding this workflow first will have a large impact on which framework, if any, gets embedded into
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
My personal opinion, AngularJS with it’s component system (super easy to understand and work with). My realistic opinion, we don’t have enough information to make a decision.
There are a lot of opinions based on personal experience or “what I’ve read / heard”, but I think we should be asking how will Johnny “I’ve been building with WordPress from the beginning”, as well as Mark “I just started making my first
plugin
Plugin
A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory
or can be cost-based plugin from a third-party.
”, even be using the new Admin framework.
Hi, What about the problematic license of
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
mati1000
actually, this is no longer the case:
see here
But the fact that your license
CAN be revoked
at all is worrisome.
Vue’s use of the MIT license
is just another reason it is more of a fit for WordPress than
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
During the WordPress Weekly
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
Chat I was the only person promoting
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
and it has been wonderful to read all of the supporters of Vue in the comments.
There have been some great points made, but one that sticks out the most to me is the adoption of
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
is much more than adding a library to WordPress: it is adding the culture, business practices and code base lead by a tech giant.
If we include React in
Core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
, in a way we are asking users (from single site owners to enterprise) to accept Facebook has a key role in the future of WordPress. I have little doubt this will cause pause for some companies considering to adopt WordPress.
I will not reiterate many of the arguments already listed here, but want push up my vote for Vue once more.
I’ve been doing WordPress development for a little while now, but mostly
PHP
PHP
The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher
stuff, and basic jQuery for interactivity on the back-end. Over the last year or so I’ve been chipping away at getting better at
Javascript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
, and have done a couple little things with Backbone, and have learned a tiny bit of Angular and Node stuff. So whatever WordPress decides to use as a framework in
Core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
is obviously going to be a huge part of whatever I need to learn next. Based on what I know about
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
and
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
(which isn’t a whole bunch), the prospect of having to use and learn React is not encouraging.
Just from the perspective of a developer with my level of
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
experience, React looks like an over-complicated mess that’s trying to unnecessarily (from where I’m standing) reinvent the wheel. I really don’t like the way it looks like it handles templates and
CSS
CSS
Cascading Style Sheets.
I know this is probably largely borne of ignorance, but Vue looks like a much more sensible approach and less intimidating to developers like me, and I haven’t really seen many arguments for React that would make losing that approachability worth it.
Since this comment I’ve got a tiny
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
app up and running.
I like it a
lot
Why do you need a
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
Framework at all? Why overcomplicate things? JavaScript was made as a simple tool for browser scripting. Modern JavaScript itself already is the most powerful and fastest framework.
You can make
Vanilla JavaScript components
without any fancy frameworks with virtual problems.
Just use small tiny dependency-free libraries like
lodash
BunnyJS
D3
only when you need them.
The “vanilla
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
” discussion often ends up sounding a lot like, “don’t use code other people have written” – the not-invented-here syndrome.
These frameworks exist because once people get going on making “plain JS” components and handling all of the cases they need to handle they realize they have rebuilt a new framework library.
The discussion could be cast another way: who has most adequately thought through and handled the common patterns needed to make a modern web app?
Are these frameworks bloated? Maybe. It might simply be the case that it takes a lot of code to do web apps well. They normalize web browser behaviors, provide a solid
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
for integrating independent pieces, and provide strong optimizations which allow developers choose more maintainable code styles but which still run quickly in the browser.
If we think we can recreate what these frameworks do, recreate it better, and recreate it with less code then maybe we should reject them. If they can provide what we want and do a reasonable job of it, then we can focus our efforts on building WP instead of building yet-another-home-baked-framework.
I vote Vuejs because it’s faster, lighter, and easier to learn
What I have to say has already been said above, but I figured I’d throw my two cents in anyway.
I started using WordPress in 2005 because of how easy it was to build on top of in comparison to many other systems at the time. This low barrier to entry made all the difference in the world to me.
I’ve used Backbone. I’ve built stuff with it. I have a love/hate relationship with it. It’s not easy for beginners.
I’ve tried
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
on a few occasions. Even with over 10 years of programming experience, it was tough to grok for me. I can’t imagine trying to learn it as someone new to WP development.
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
is dead simple to start learning. I had a small app up and going in minutes. In a couple of hours, I was building some cool, form-related stuff without the docs.
If it were entirely up to me, I’d push for WP to build its own
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
framework that solves the problems specific to WordPress. But, if we’re going to choose an existing framework, go with Vue.
I think
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
look more like WordPress… I don’t want WordPress to become too complicated for new developer.
WordPress won the “CMS battle because of the easy Learning curve”…
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
is awesome but Vue have all the advantage of it … with a smaller foot print and a easier Learning curve.
So my vote is for Vue
So to start out I should say I love
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
and
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
and Redux
And I think they can do great things. But I fear we have some kind of existential crisis stemming from a couple of its characteristics:
– a lack of a language compilation stage
– a lack of a solid integrated standard library
– so-called
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
“fatigue”
– browser support
As is clear in the
Gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
project, it’s a lie to say our JavaScript isn’t compiled. The language demands compilation and a host of lints; so instead of a fast and reliable and standard compiler we use one of several different options or flavors which don’t work well together and are really slow, _really slow_, and confusing for new contributors to follow and setup. Other compile-to-JS languages have a single compiler that does everything and does it fast. One package to install. Strong static typing gives them options far beyond plain JS to optimize and rearrange the output
No standard library means we pull random packages from around `npm` or use lodash or jquery or some combination. Versions are a big deal and minification is a big deal because we have to figure out how to use the code and not ship much more code than necessary, the different standard libraries behave differently and rarely go much deeper than the basics leaving the bigger architectural decisions open
That brings us to the fatigue. JS is cool because you can do everything, but Python is cool because there’s just one way to do everything. The web has unique problems with data acquisition, syncing, and storage and we have a million libraries to solve them that people argue about. It’s incredibly difficult to get oriented and just when we do everything changes. Usually the norms have been changing for the better, but the pace of learning all the things and forgetting then is fast. Maybe it’s more accurate to say that a high number of JS libraries require a significant learning of “institutional knowledge” only applicable to that framework and useless with others. Knowing Angular won’t help you write
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
code. Some compile-to-JS libraries fill in far more of the gaps and the patterns are more established.
Network
network
(versus site, blog)
and data and Immutable libraries are baked in to the language so they make it natural instead of confusing to use. Some languages go so far as to be designed to solve the unique problems of browser-apps.
Finally, as the “assembly of the web” JS is a constant moving target and programming in the JS we _want_ usually means we have to transform it into the code that we _can run_. Compile to JS languages track browser support without needing to change the way their languages run, freeing us to program how we want safely. So while we constantly have to be aware of which browsers support which JS features, compile-to-JS languages remove this burden entirely from us. They just work in all browsers.
For someone wanting to learn more I would encourage a cursory review of the following languages. Some of them will seem flashier/cool-new-thing than others. Some are trophies of paced and thoughtful design.
*Elm* designed to build web apps. Very opinionated and designed at its
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
to be beginner friendly and provide a gradual path to learn more as you go. My personal pick for “what will win in the next ten years on the web”. Known for its incredibly helpful error messages
*ClojureScript* is a LISP designed “to make programming fun again” and has a host of features to push what a dynamic language can do. Known for its interactive development patterns. The Om and Om/next framework are wrappers around React and manage the entire framework including local data caching and remote fetching, updating, etc…
*Bucklescript* OCaml for the web. It’s a multi-paradigm language with a good balance of functional and imperative patterns. Great JS-interop and great libraries. Known for its blazing-fast compilation.
*PureScript* purely functional language learning from the lessons of Haskell. Known for its functional expressivity. Halogen is a popular
UI
UI
User interface
similar to React. Quite a bit different mentality than these other languages.
*TypeScript* is JavaScript on steroids. It adds considerable safety on top of JS without changing too much of the mechanics of the language. Does not address anything but compilation and safety issues. Known for its autocomplete and ease of learning from those already familiar with JS.
I would at least like to raise the discussion. Things like React and Vue address some issues but leave so many questions unanswered. If we are going to be setting the future of core development, we should consider the entirety of what will be written: user interfaces, data gathering, data storage, network access, plugability, ease of entry, build system complexity, tooling and compile-times, pace of churn in the development ecosystem.
N.B. Compile-to-JS languages may also take the lead as Web Assembly grows in adoption and support. Although JavaScript still runs faster in most cases and Web Assembly is missing key features for building web apps, the fact that other web language exist with tighter semantics and compilers means that there will likely be less overhead in producing Web Assembly than when using hand-written JavaScript. This is not a big point, but probably worth noting.
Also I should have added *Reason* which is a project by FaceBook putting a face-lift on OCaml
There was also some discussion around this in #
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
-editor on
Slack
Slack
Slack is a Collaborative Group Chat Platform
. The WordPress community has its own Slack Channel at
As a second “large thought” I would like to pose the question of what we think we might be wanting to build exactly. Are we building a single-page app with routing and storage management and everything rendered as a response to
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
calls? Are we simply building updates to wp-
admin
admin
(and super admin)
which are more interactive than they have previously been? Are we trying to build an optimized application which concerns itself with battery life and and
network
network
(versus site, blog)
data usage?
In many ways an app can become significantly simpler if we eliminate routing. Make each path its own application. We have a bunch of mini-applications instead of one mega application.
The way some of these frameworks are built lead us increasingly towards a mega application and then we start hitting the hardest challenges: storage constraints, asynchronous data flows, inter-related data, routing and history behaviors, bundling and chunking…
Let’s also imagine a single page or pane in the control panel which is given to be its own app and take it as fact that we lose some efficiencies to gain others. Components become simpler when we don’t have to make them a piece of a much bigger puzzle. We need fewer “glue” libraries to make the independent pieces work in harmony. It’s much easier to write _this_ control panel in
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
and _that_ one in
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
. Heck, let’s write _this other one_ in Elm.
What is the web platform? What is the future?
Essentially most web apps I see today do a few basic things:
– Boot up, hopefully with some dummy
HTML
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
as a placeholder
– Make some network calls for data
– Update the dummy HTML with real content
– Repeat the network-call-render cycle when stuff happens
Each major framework can handle these things and handle them well. We welcome significant difficulty when we further ask that they work together, because they do not work together.
If we step further down and think about standardizing self-contained components then we can further reduce the “system” overhead and take up additional efficiency losses as a result. We can use standards like Web Components which each handle their own network calls and rendering. It’ll be harder to integrate different and related pieces, but also easier to write _this_ component in Preact and _that_ one in Angular. Heck, let’s write _this other one_ in Backbone.
What then _is_ the framework?
Maybe what we really want is something that provides the essentials of the web platform and let’s us creatively modularize the _pieces_. Give us great network functionality, simple ways to make this form save to that API, have a simple HTML DSL.
Since they all basically do this, can we evaluate _how much_ we have to do and learn to get started? Might as well assume that _everything_ will be “compiled” in one form or another. Are some opinionated so that we don’t have to figure out how to load in data? How easy is it to figure out why code in a specific platform is broken? What are the tests like (can we bring in static typing and eliminate the need for a wide variety of tests)? How is the ecosystem around versioning? Will they shelter us from changing browser standards?
My guess is that if we really demonstrate how to build modular composable components than many people will be able to write and rewrite specific pieces in the different frameworks without too much pain. Yes it would be darn-near-impossible to rewrite Calypso in Vue or Elm over the weekend, but sure many of us could rewrite specific panels or pieces or components if we didn’t have to worry about the thing as a whole.
Anyway, as always, not a lot of answers, but a ton of questions.
Dennis, you make some excellent points and one in particular stands out to me:
In many ways an app can become significantly simpler if we eliminate routing. Make each path its own application. We have a bunch of mini-applications instead of one mega application.
It is a great idea to run a bunch of mini applications and feel this would be the best route to ship something small and iterate with new “mini apps” over time.
I vote for Vue.js.
It’s fairly easy to learn and use. It makes it more likely that the developers would use it instead of jQuery/TinyMCE in their plugins and themes. And that’s the ultimate goal, isn’t it?
In all of this discussion I think that we have to analyze what is the actual situation of js framework inside WordPress itself.
We have jQuery and Backbone with Underscores.
For many here Backbone is not good but we have it (so will need to rewrite the part that are using to avoid spaghetti code) and there are
feature plugin
Feature Plugin
A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See
Features as Plugins
developed in
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
(like
Gutenberg
Gutenberg
The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc.
).
At the same time I think that
Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
and easy development for us need to be the first rule and seems that Vue.js rules.
So for me first to talk about framework I think that is time to develop what are our rules for a js framework and next evaluate as written by others.
Or will be a never ending story without the real reason.
Vue.js has my vote.
I know that some people are concerned that Vue.js is young and might disappear, but I would like reassure you that if it does then you would see the collapse of the Laravel community, GitLab, PageKit and Alibaba (very unlikely) as all of them have vested much effort into Vue.js, especially the ecommerce giant Alibaba.
My biggest reason for backing Vue.js is its simplicity for allowing others to contribute to WordPress. As already mentioned, some
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
know-how and you will be able to whip up a
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
component in no time vs. the complexity of
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
. Its easy enough to use Vue.js without heavy front-end tooling and plain old ES5.
Lightweight has been mentioned too. Vue.js minified and gzipped only weighs in at 23kb. And that honestly is all I would like to see in
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
. That means if I wan’t to use heavy tooling and ES6 to create Vue components or just write a simple
plugin
Plugin
A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory
or can be cost-based plugin from a third-party.
with ES5 and no transpiling I can.
My few thoughts for now 🙂
I’m surprised to see so much misinformations about
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
. So, let’s back-up and try to answer some of these concerns:
– React is complex?
React’s
API
API
An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
is at the most as big as
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
if it’s not smaller than Vue.js API. We can not say React is more complex than Vue.
– React is heavy?
React minified and gzipped weights 43kb. That’s not what I can call “heavy”. And React Fiber 16 (which will be released soon) is even lighter.
– React has a steep learning curve?
If we compare React and Vue.
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
, I think the learning curve is really close. I can admit that Vue.JS documentation is better but that’s something that can change over time. The framework itself is not “more” complex than Vue.JS
– What about the build tools etc..
We can use Vue.JS without tooling, same as React. The difference is that in the React community, we don’t emphasise this a lot. And there’s a reason for that.
We’re trying to shift mentalities here, we’re building modern frontend Applications with rich interactive
UX
UX
User experience
so let’s not pretend our current
JavaScript
JavaScript
JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
knowledge (the WP community) will get us there, no matter the framework chosen, we’ll need to learn things. If we pick Vue, reading the docs won’t be enough, we’ll have to learn functional programming, data-flow paradigm, ESnext… And this is the same for React, so I think the learning curve for the WP community is exactly the same no matter the framework chosen, let’s go deeper than the basic Hello World example.
Let’s see the other requirements
Stability:
React has proven its stability, take a component written with the first React Version (4 years ago which could be considered a century in the JS world), it still works today. AFAIK Vue.JS is three years old but it broke BC hardly in the 1.0 and 2.0 release. We could argue that Vue2.0 is stable enough now, but still, this is a point.
Longevity:
I’m not concerned for React, neither for Vue.
Mature.
I think the stability from its launch speaks for React here. I can’t speak for Vue’s maturity.
Well-adopted.
The two are well-adopted.
Accommodating to
Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
requirements.
Same pros and cons for both IMO.
Interoperability with existing code.
Both frameworks can use external vanilla JS.
Architected to support predictable data flows and composability. Composable,
Extensible
Extensible
This is the ability to add additional functionality to the code. Plugins extend the WordPress core software.
, Testable
I can say React behaves really well in all these points. I’ll assume Vue does but I don’t know Vue enough to tell.
For everyone making a claim that something is simpler or has an easier learning curve…
Building modern web interfaces will not be simple or easy
It doesn’t matter which framework. It
would
be substantially more helpful to verbalize why you feel X or Y is easier for a given task.
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
’s push towards pure components as
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
functions means that we can write unit tests for those components without needing special test frameworks.
Elm’s virtual DOM library is native to the language, 100% open-source, and benchmarks faster than almost every other VDOM library
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
’s documentation is much more complete than React’s and walkthroughs/tutorials are more common on web searches
Angular’s string-DSL-inside-of-
HTML
HTML
HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.
attributes is teh bomb because nobody likes standards or syntax highlighting or debugging anyway!
measurable testable statements.
if we have an opinion, even a strong opinion, that’s fine. we hear you. however, if we ask the question, “what is right for WordPress” then let’s provide evidence beyond ourselves that can be verified by others.
Maybe
you
find FruitViewJS easier than SpoonForkJS, but
don’t and simply telling me that I’m wrong doesn’t help me understand your viewpoint or
why
you hold it.
Maybe it’s a whole other conversation, but I think something that needs to be discussed before any big
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
overhauls are made is a good state management layer for the WP-
Admin
admin
(and super admin)
Whether
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
or
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
or anything else is used in
core
Core
Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
or by plugins/themes, a consistent, standard, predictable, State management layer in the WP-Admin would be huge.
Whether it’s Redux (works great with Vue and React), or something else (MobX, or whatever), some sort of client-side state management
needs
to be added to the WP-Admin, otherwise any view layer we use is going to get really messy to build cohesive interfaces across the WP-Admin.
Much like we have the WordPress database that provides a predictable way of storing data, we need a similar consistent, predictable way to fetch and store data in the client.
I believe WordPress was the winner over other php cms because of the low learning curve. It makes new developers happy by quickly see results and this is a huge motivator.
Not the best and most object orientated cms was the winner. WordPress is and was the winner because it is so easy to learn.
I believe this is the same with
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
vs
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
The easy to learn will always be the winner and in the end attract more new People and make them become great developers.
I agree with Kopepasah, Sven and others on
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
vs.
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
Vue is great because:
1. It doesn’t need to be compiled
2. It’s just
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
(not JSX)
3. More approachable
4. Lightweight
5. React could go the way of Angular 2+; that is, have a massive change that suits the company (Facebook), and adds a massive learning curve.
6. There are a lot more
I know folks who’ve already started to learn React want to keep using it. But for the sake of the rest, I think it would be best/easiest for others to learn Vue over react. I’ve found Vue much easier than React.
Just my two cents.
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
is the way to go IMO. It’s got a large community of developers behind it and there are so many
open source
Open Source
Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL.
components that you can use in your app.
vote for vue.
Vote for Vue.js!!
TL:DR
I wanted to change front-end only with a
JS
JS
JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.
framework. This is why I tried
first. Then I come to end managing node.js wasn’t very easy along with
apache
Apache
Apache is the most widely used web server software. Developed and maintained by
Apache Software Foundation
. Apache is an Open Source software available for free.
I used vanilla JS first but managing routes become headache.
Changed plans, and tried
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
. React is powerful, and easily adaptable for wp, but when I started to write templates for custom fields(I used ACF and WCK), that is where I started to feel React is hard to manage this little parts.
Finally I started to use Vue.js and I can tell I felt I found my ultimate solution. I am now re-writing whole front-end using
Vue
Vue
Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces.
, Axios, Vuex, Vue-Router. All parts fits very well, this is a experiment so far and need to finish and see whole picture with Vue.js.
Just wanted to share my experience with both.
I can say Vue.js can be breeze for visitor site, while we can still have php powered
admin
admin
(and super admin)
while we are transitioning.
It was very unfortunate that Automattic chose
React
React
React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
to develop Calypso as React is a horrible fit for WordPress.
If you ever use React within WordPress development, you quickly realize you need to tailor/adopt WordPress to React as React enforces its own workflow & logic.
This is why Vue.js has already surpassed React in terms of actual usage.
WordPress community does not need to repeat the same mistake Automattic has made.
Download your Youtube Videos,MP3,Face book Videos,MP3 to your mobile, smart phones,
computer using
Free video Downloader Online
, in mp4, mp3, webm, 3gp formats both in HD and SD quality
By the last news, I think you’ll need to start again this thread. For those who voted on VUE , congratulations for your clear view.
Comments are closed.
Site resources
Email Updates
Enter your email address to subscribe to this blog and receive notifications of new posts by email.
Join 6,695 other subscribers
Recent Updates
Recent Comments
No Replies
Current Release
The current release in progress is
WordPress 7.0
. Planned future releases are listed on
the Project Roadmap
. Feature projects not tied to specific releases can be found on
the Features page.
Regular Chats
Note:
All chats happen on
Slack
Weekly Developer Meetings
: [time relative]Wednesday 15:00 UTC[/time] in
#core
About the Dev Chat
Agendas
Summaries
Performance Weekly Chat
[time relative]Tuesday 15:00 UTC[/time] in
#core-performance
New Contributors Chat
The 2nd and 4th Wednesday of every month at 17:00 UTC in
#core
See all meetings →
Recent Posts and Comments
Team Pledges
2664 people
have pledged time to contribute to Core Team efforts! When looking for help on a project or program, try starting by reaching out to them!
compose new post
reply
edit
go to top
go to the next post or comment
go to the previous post or comment
toggle comment visibility
esc
cancel edit post or comment