Page MenuHomePhabricator

[EPIC Question] Is there a future where we unify front ends
Open, NormalPublic

Description

This task continues a discussion that started around T195473#4783284. The question is, how should we best organize our front end code so we can minimize maintenance and new feature development cost? Speaking only about mobile and desktop interfaces for now, any integration with native apps seems best left to the service layers. Some questions that we could answer as part of this discussion:

  • How hard would it be to merge MobileFrontend, or parts of it, into core?
  • Would that be worthwhile in terms of maintenance? Development of new features?
  • <<any other specific questions from @daniel>>

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptNov 29 2018, 4:05 AM
Jdlrobson triaged this task as Normal priority.Dec 13 2018, 10:51 PM

How hard would it be to merge MobileFrontEnd, or parts of it, into core?

We are currently in the process of packaging MobileFrontend's JS into a standalone component library. When we're done with this, the library will live outside MobileFrontend (similar to OOjs UI), any remaining code in MobileFrontend will be refactored so its compatible with core (and any relevant upstreaming), but the majority of the code will end up in Minerva (which makes sense - just like VisualEditor houses VisualEditor-OOjs UI code). Follow T171000 for updates!

The code that remains in MobileFrontend will be limited to special pages and mobile formatting. I'd be keen to see the special pages in MobileFrontend upstreamed to core and rewritten using core's libraries. This includes https://en.m.wikipedia.org/wiki/Special:MobileLanguages/Spain and https://en.m.wikipedia.org/wiki/Special:Nearby

Would that be worthwhile in terms of maintenance? Development of new features?

Long term it's hard to say. Minerva is pretty sandboxed from core and is essentially a mixture of mobile-specific components that don't make sense in a desktop context. I see skins as separate experiences and thus free to use their own code (just like many skins make use of bootstrap).
Time will tell, but I think it's too early to answer this question fully. I can say with all certainty though that MobileFrontend is converging towards a much simpler extension that simply provides an HTML formatter for mobile content and the capability to support a different skin on a mobile domain.

Jdlrobson renamed this task from Is there a future where we unify front ends to [EPIC Question] Is there a future where we unify front ends.Dec 18 2018, 12:28 AM
phuedx added a subscriber: phuedx.Jan 24 2019, 8:07 PM
Krinkle updated the task description. (Show Details)Feb 12 2019, 1:12 AM