Hello everyone,

In September, I submitted a proposal to the Technical Decision Making
Process called "Modern interfaces for all users" [1]. This proposal was
somewhat abstract, but it was about different ways we could render user
interfaces on the server, given that our server-side code is written in
PHP, but most UI code is written in JavaScript (including Codex[2], the new
library of shared UI components being developed by the Design Systems Team).

One solution that many people have been asking for for some time is Vue's
server-side rendering (SSR) feature[3]. Supporting Vue SSR in MediaWiki
will require in-depth architecture discussions, and I think that will
eventually be part of this TDMP too. However, there are also other
approaches for rendering UI components on the server which may be more
appropriate, depending on the situation. So before we delve into
architecture and implementation for Vue SSR, we should first discuss which
methods of rendering UIs on the server we want to use in which situations,
both to confirm that we really do need Vue SSR, and to inform the
architecture discussion.

To that end, I've started a discussion on a Phabricator task where I list
different server rendering methods and make a simple (probably too simple)
proposal for when to use which. If you're interested in this topic, please
go to https://phabricator.wikimedia.org/T322163 and participate in the
discussion there.

Roan Kattouw
Lead engineer on the Design Systems Team at the Wikimedia Foundation

[1] https://phabricator.wikimedia.org/T317270
[2] https://www.mediawiki.org/wiki/Codex
[3] https://vuejs.org/guide/scaling-up/ssr.html
_______________________________________________
Wikitech-l mailing list -- wikitech-l@lists.wikimedia.org
To unsubscribe send an email to wikitech-l-le...@lists.wikimedia.org
https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/

Reply via email to