Create a new "beta" endpoint for wiki pages, and begin converting it to React
Categories
(developer.mozilla.org Graveyard :: Performance, enhancement, P1)
Tracking
(Not tracked)
People
(Reporter: dflanagan+bugzilla, Unassigned)
References
Details
(Keywords: in-triage)
Attachments
(29 files)
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
79 bytes,
text/x-github-pull-request
|
Details | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
79 bytes,
text/x-github-pull-request
|
Details | |
41 bytes,
text/x-github-pull-request
|
Details | Review | |
79 bytes,
text/x-github-pull-request
|
Details | |
79 bytes,
text/x-github-pull-request
|
Details |
We'd like to move towards a React-based frontend for MDN, but we need to figure out how to get there.
I'm filing this bug to track some experimental work we'll do to figure out whether we can incrementally convert Kuma to use React or if we need to start from scratch.
This experimental work will probably look like this:
-
Create a new Kuma endpoint en-US/beta/ that does exactly the same thing as en-US/docs/ (but that only works on the staging server and is never visible to end users).
-
Modify that new endpoint so that it uses React in some small way (like displaying the MDN logo). As part of this we'll also set up the webpack/babel toolchain, and get flow and jest snapshot tests working. Then we'll measure the performance of this new part-React, part-jQuery page and compare it to the existing /docs endpoint to get baseline data on the performance impact of adding React. (We'll have to decide whether to use React libraries from a CDN or not)
-
Do more substantial work with React, perhaps replacing the navigation header at the top of the page, and removing the jQueryUI library that it depends on. And see what the performance impact of that is.
-
Attempt to set up client-side navigation (possibly using react-router) to see how fast we can load new documents when we don't have to do a complete page load.
-
Investigate server-side rendering of our React content to see what the performance impact of that is and to figure out how to do that for both the logged-out and the logged-in case.
There will be individual user stories for these steps in the Kuma.Next epic on github: https://github.com/mdn/sprints/issues/766 This bug exists for tracking purposes so we can reference it when we've got pull requests to the Kuma repo.
Reporter | ||
Updated•6 years ago
|
Updated•6 years ago
|
Reporter | ||
Comment 1•6 years ago
|
||
First step: https://github.com/mozilla/kuma/pull/5241
Reporter | ||
Comment 2•6 years ago
|
||
The second step of this process was a PR that displayed the MDN logo with react. It didn't seem to have any significant performance impact on the site when measured on the staging server with speed curve.
The third step is a larger PR that redoes the entire navigation header: https://github.com/mozilla/kuma/pull/5277
That was just merged today, and will presumably be deployed next week, and we can continue to look at the speedcurve tests to see if there are perf implications.
A possible 4th step is https://github.com/mozilla/kuma/pull/5280 which implements a simple (and imperfect, experimental) client-side navigation on the test /ducks/ URLs. It will be interesting to try this out on staging and see how much faster pages loads are when we're just loading the new HTML and not all the JS and CSS.
Comment 3•6 years ago
|
||
Comment 4•6 years ago
|
||
Comment 5•6 years ago
|
||
Comment 6•6 years ago
|
||
Comment 7•6 years ago
|
||
Comment 8•6 years ago
|
||
Comment 9•6 years ago
|
||
Comment 10•6 years ago
|
||
Comment 11•6 years ago
|
||
Comment 12•6 years ago
|
||
Comment 13•6 years ago
|
||
Comment 14•6 years ago
|
||
Comment 15•6 years ago
|
||
Comment 16•6 years ago
|
||
Comment 17•6 years ago
|
||
Comment 18•6 years ago
|
||
Comment 19•6 years ago
|
||
Comment 20•6 years ago
|
||
Comment 21•6 years ago
|
||
Comment 22•6 years ago
|
||
Comment 23•6 years ago
|
||
Comment 24•6 years ago
|
||
Comment 25•6 years ago
|
||
Updated•6 years ago
|
Comment 26•6 years ago
|
||
Comment 27•6 years ago
|
||
Comment 28•6 years ago
|
||
Comment 29•6 years ago
|
||
Comment 30•6 years ago
|
||
Comment 31•5 years ago
|
||
Comment 32•5 years ago
|
||
Updated•5 years ago
|
Description
•