The team behind the MDN started as Mozilla Development Network has been committed to the movement of the documentation site on the web developer blog Mozilla Hacks and publishes the first beta of the new platform. A github-based approach replaces the previous wiki.
The MDN team obviously heads a certain sympathy for Pokemon.
The new platform carries the code name Yari as a reference to the traditional Japanese lance. The blog contribution moves in the change of the previous Kuma based on Yari a comparison to developing Pokemon. In the games, the evolution is often more a metamorphosis, in which the appearance and partly the skills change significantly. Obviously, the MDN team has been planning one for a long time "Radical amendment of the platform".
The betaamil of Yari
The MaBglicherverzungen concerns only the backend. For users of the documentation, however, the change should be made relatively transparent. Affected by the changes are one of those who develop the platform and, on the other hand, the authors of contribute.
Since the 3. November exists the first beta of Yari on Github. Developers can be tested and the first release is stuck for the 14th according to the blog post. December provided, which already suggests a stable state of the software for beta start.
Motivation for the changeover
The team calls four essential bases for the conversion of the platform: less administrative expenses for the development site, better workflow for contributing, advanced involvement of the community and an improved front-end architecture. In addition, the vacancies at Mozilla in August, which was also associated with a reduction of the MDN team, have given an additional start.
Obviously, it is quite difficult to expand the Kuma platform to expand new functions. With Yari, a coarse part of the code base should disappear and thus the management of the project will become much easier.
Pull Requests instead of wiki
The model is stronger to the processes that are used to software developers and developers: content-related contributions arise like code submissions for open source projects in the form of Pull Requests (PR) instead of a direct change in the Wiki. In addition, editing should be integrated into typical drains and make MDN source files conveniently processed in development environments.
The PR approach means that the publication is preceded by a review process. Thus, the MDN team has a look at the entrance and can give additional feedback before new content goes live and potentially changed (must have). This promises a strong binding to those who make regular contributors – analogous to the communities of open source projects.
Inspersive or new entries, additional tools can be integrated for the qualitative scanning such as automatic test tools to better ensure that code is correct. At the same time, the frontend should be carried out, which probably currently has vulnerabilities in some areas.
Jamstack instead of wiki
In the old model, all clients over a content delivery network (CDN) access to content, irrespective of whether they only retrieve or create them or edit. Yari is creating contributing to Github. In addition, the architecture separates the delivery of documents of search queries and account-specific traffic. The latter services are as before in a separate Kubernetes cluster, but it is much smaller than before.
The new platform separates contributors of readers and should accelerate the delivery of documents to the CDN.
The old platform has read out the content from a MySQL database, changed in HTML and delivered on a CDN where you were in the cache for fun minutes to allow the same inquiries without database access. In the new model, the contents go daily to an S3 instance on Amazon Web Services, which provides you to the CDN for reading. Version management GIT plays an essential role in the OKO system for creating content.
Detour over the IDE
For contributors, the conversion was allowed to be all of the custody. You can not edit content by simplifying Edit in a WYSIWYG editor on the page, but need to access the processes and tools used in software development.
Typically, you create new entries in a development environment or source code editor such as Visual Studio Code and then rich him as a pull request in the Github repository. For easy code elevations, you do not necessarily have to go the detour over local tools, but you can edit the past on the Github-Ui.
To start, the one who wrote attrition, edit all files in the HTML source code. This is provided that you check the ie in the browser before submitting the PR. In the long term, the team plans a change to Markdown as standard format for the content.
Further details on the process and infrastructure can be found in the blog post on Mozilla Hacks.