Maria has written up a formal plan [1] for moving Web Components forward post v2.5.
[1] https://docs.google.com/document/d/1BmGLrm1tVsgv2S8mt-nTkNUN0kj8PqXq_7Wt-PP3lwE/edit *W I L S O N P A G E* Front-end Developer Firefox OS (Gaia) London Office Twitter: @wilsonpage IRC: wilsonpage On Thu, Nov 12, 2015 at 8:59 AM, Chris Mills <[email protected]> wrote: > Thanks Harly — this will be a great help for getting the material on MDN! > > So yeah, I think from what you are saying it would make sense to put the > web components on their own separate section completely, and then just link > back to the old building blocks section for reference. > > Chris Mills > Senior tech writer || Mozilla > developer.mozilla.org || MDN > [email protected] || @chrisdavidmills > > > On 12 Nov 2015, at 03:13, Harly Hsu <[email protected]> wrote: > > > > Hi Chris, > > Nice to know that you will be working on the documenting on MDN, and it > is such a coincident that the UX team were just talking about reaching out > to you for MDN assistance. The UX team are currently working on a document > of the current web component similar to what we did during Building Blocks > for 2.x, and will provide the document to you for review once we are > completed. Also, we will provide the necessary assets like visuals and > animations to be put on MDN. > > > > For the version and naming, I think building block will still exist for > current 2.x release, so probably make sense to still have the old building > block guideline page on MDN as reference, and put web component at its own > section to avoid misunderstanding. But that just my thoughts on this. Thanks > > > > Harly > > > > > > > > On Wed, Nov 11, 2015 at 10:05 PM, Chris Mills <[email protected]> > wrote: > > Hi is indeed great news — I’ve bene waiting for this for a long time, > with an eye to updating the Building Blocks docs on MDN. I currently have > some of the web components documented here: > > > > > https://developer.mozilla.org/en-US/Apps/Design/Firefox_OS_building_blocks/2.3 > > > > Although that was along time ago and updates will probably be needed, > along wth adding all the others. > > > > Questions: > > > > * When would be appropriate to start documenting these? I’d imagine Q1 > 2016 would be good after our Shadow DOM v1 implementation comes out, so > people can at least start testing them in Nightly or whatever. > > * Are we sticking with the “building blocks” name, or dropping it? At > the moment, I have the web components listed under the building blocks > section, but I’m wondering whether I need to split them out to their own > section. > > > > Chris Mills > > Senior tech writer || Mozilla > > developer.mozilla.org || MDN > > [email protected] || @chrisdavidmills > > > > > On 5 Nov 2015, at 11:05, Eric Pang <[email protected]> wrote: > > > > > > +1 this sounds amazing Wilson, been waiting for this day! > > > > > > Especially the idea of using a live guide. Would be great if we can > have a process in place that ensures it always stays update to date. > > > IMO The change to the workflow would be worth it to stay aligned. > > > > > > Eric > > > > > >> On 4 Nov 2015, at 14:56, Wilson Page <[email protected]> wrote: > > >> > > >> The following is an initial strategy, along with some insight behind > our thinking. > > >> > > >> RENAMING TO FXOS-* > > >> > > >> We will be renaming the Github organisation 'gaia-components' -> > 'fxos-components' along with namespaces for each component (eg. > <gaia-header> -> <fxos-header>). > > >> > > >> This is to improve transparency and solidify our message. Many people > have heard of FirefoxOS, but not 'Gaia'. Let's tear-down these confusing > barriers to contribution/understanding and align our vocabulary. > > >> > > >> PLATFORM STABILITY > > >> > > >> We've been using web-components in production across FirefoxOS for > over a year in various places: > > >> • <gaia-header> (all apps) > > >> • <gaia-dialog> (spark apps) > > >> • <gaia-switch> (spark apps) > > >> • <gaia-toast> (system app) > > >> • Vertical homescreen > > >> • New homescreen > > >> • All Music NGA UI > > >> • Other stuff I've forgotten :) > > >> This has given us confidence that what we have in the platform right > now is fast and reliable enough for production. > > >> > > >> Shadow DOM V1 (the latest spec all vendors agree on) has shipped in > Chrome and WebKit Nightly. We're currently working on our implementation. > Word from DOM team is, that once complete, they too will be happy to ship. > I have been given a *ballpark* estimate of Q1 2016. > > >> > > >> All vendors have not yet agreed on the intricacies of Custom > Elements. They will be meeting in Dec/Jan for a face-to-face to present > proposals and iron our the remaining kinks of a more ES6 centric design. > > >> > > >> In Gaia we're using Google's initial specification which we haven't > preffed on by default yet. Third-parties are able to use this API (and > Shadow DOM V0) by using the > "moz-extremely-unstable-and-will-change-webcomponents" permission in their > app manifest. > > >> > > >> Imagining optimistically by May 2016 we'll have Shadow DOM V1 preffed > on, third-parties will be able to use our fxos-components in Gecko by > either using the above pref, or a custom-elements polyfill (currently used > by the Google AMP project). > > >> > > >> For the time being we have confidence that the current implementation > is sufficient for our internal needs. New Shadow DOM and Custom Element > APIs will land parallel alongside the old, before being deprecated, giving > us ample time to upgrade. We have also abstracted core APIs behind our > gaia-component wrapper, which reduces the number of code changes required > to migrate if/when platform changes. > > >> > > >> SEPARATE REPOS > > >> > > >> Component will continue to live in their own repos on Github under > the newly named 'fxos-components' organisation. Each repo will contain > source-code, live demo(s), tests and documentation. > > >> > > >> PACKAGE MANAGEMENT > > >> > > >> After much discussion both on mailing lists and person to person, we > have decided to make the following changes to how we manage external > components in Gaia. > > >> > > >> We will move from Bower to NPM3. NPM has become the package manager > of choice for the majority, with NPM3, comes with several nice front-end > features (some borrowed from Bower). > > >> > > >> Due to the reasons I outlined in this thread, components will be > installed locally to each app referenced within a `package.json` at the app > root. This adds a small amount of learning/friction to our workflow, but > brings stability to our process (similar to writing tests). > > >> > > >> Today external dependencies are checked-in to the Gaia tree. This > avoid complexities with install, version mismatches, build systems and > dependency on third-party servers. The downside is that it adds weight to > the tree and noisy diffs. We'll be sticking to this approach unless more > attractive options come to light. > > >> > > >> 'LIVE' STYLE GUIDE > > >> > > >> We will build a single style-guide index page that will link to each > component's individual gh-page demo. This will act as an index of the > components that we deem 'production ready' and will be Gaia devs' go-to > catalogue. > > >> > > >> The style-guide will link to each demo, which is turn will link to > source Github repo with code, documentation, tests and issues. > Incorporating a 'readiness' checklist within README, following on from the > hard work Fred did, would quickly highlight stability and feature gaps. > > >> > > >> I'd also love to have visual/UX specs checked in alongside > source-code as a proof implementation matches specs, but this may require > significant changes to visual/UX workflow. > > >> > > >> FOSTERING CONTRIBUTION > > >> > > >> Many of these changes are an attempt to lower the barrier to entry > for contribution to FirefoxOS. Having components separated from Gaia > increases discoverability and sends the message that these components can > be used stand-alone. > > >> > > >> The scope of 'required understanding for first commit' is shrunk > dramatically when contributors have less code to look at. Using common > tools and patterns of the community, we're doing open-source in a > familiar/approachable way to others. > > >> > > >> --- > > >> > > >> Let's stop duplicate efforts, save engineering time, give designers a > fast/reliable upgrade channel and overall increase quality. > > >> > > >> If you're as excited by this as me, we're looking for help to make > this a success. Ping me if you have questions, suggestions or time to lend. > > >> > > >> Peace :) > > >> > > >> W I L S O N P A G E > > >> > > >> Front-end Developer > > >> Firefox OS (Gaia) > > >> London Office > > >> > > >> Twitter: @wilsonpage > > >> IRC: wilsonpage > > >> _______________________________________________ > > >> dev-fxos mailing list > > >> [email protected] > > >> https://lists.mozilla.org/listinfo/dev-fxos > > > > > > _______________________________________________ > > > dev-fxos mailing list > > > [email protected] > > > https://lists.mozilla.org/listinfo/dev-fxos > > > > _______________________________________________ > > dev-fxos mailing list > > [email protected] > > https://lists.mozilla.org/listinfo/dev-fxos > > > > > > > > -- > > Harly Hsu > > UX Manager, Firefox OS > > Mozilla Taiwan > > Tel:+886.2.8786.1100 ext:220 > > e-mail:[email protected] > >
_______________________________________________ dev-fxos mailing list [email protected] https://lists.mozilla.org/listinfo/dev-fxos

