This is an accepted submission for Wikimania 2014.
- Submission no. 5027
- Title of the submission
- Type of submission (discussion, hot seat, panel, presentation, tutorial, workshop)
- Author of the submission
- Trevor Parscal
- E-mail address
- User:Trevor Parscal
- Country of origin
- United States
- Affiliation, if any (organisation, company etc.)
- Wikimedia Foundation
- Meanwhile, far away on a web server, the better half of your application lives behind a narrow and latent API. This distance is only exacerbated with the addition of each new feature, while the user is still waiting to be allowed to proceed with their task. But how much of the back-end really must be on the server. How much interaction must be bottlenecked through the API. It may be time for the front-end of your application to have a back-end of its own.
- OOjs UI (normally just called "oh oh you eye") builds on OOjs, providing not only a suite of common widgets, but also the building blocks for new widgets that your application will eventually require. Taking advantage of inheritance, mixins and composition, reuse of code is maximized without sacrificing customizability.
- These two libraries were born from necessity, and refined through the development of VisualEditor. However, they are completely independent from VisualEditor and available as a ResourceLoader module in MediaWiki core, or as a package through NPM.
- Trevor walks through how to build rich client-side applications with data models using OOjs and user interfaces using OOjs UI. Showing real-world patterns and anti-patterns pulled from the past and present MediaWiki and VisualEditor code bases, he will help you to decide if and when this rich-client technique should be used, and how to use it within MediaWiki.
- Technology, Interface & Infrastructure
- Length of session (if other than 30 minutes, specify how long)
- 30 minutes
- Will you attend Wikimania if your submission is not accepted?
- Slides or further information (optional)
- Special requests
If you are interested in attending this session, please sign with your username below. This will help reviewers to decide which sessions are of high interest. Sign with a hash and four tildes. (# ~~~~).