This is a draft MiniApps Working Group charter for discussion. It has no standing.
The mission of the MiniApps Working Group is to produce specifications that facilitate the development of interoperable and robust MiniApps.
This proposed charter is available on GitHub. Feel free to raise issues.
End date | 2023-01-20 |
---|---|
Chairs | Qing An (Alibaba), Zitao Wang (Huawei), Dan Zhou (Baidu) |
Team Contact |
Fuqiao Xue (0.2 FTE) |
Usual Meeting Schedule |
Teleconferences: topic-specific calls may be held Face-to-face: at least 1 per year |
MiniApp as a new form of mobile application, leveraging both Web technologies (especially CSS and JavaScript) as well as capabilities of native applications, is gaining more and more popularity in the globe. To enhance the interoperability between MiniApp platforms and the Web, and between different MiniApp platforms (applications or operating systems that are hosts to MiniApps), mainstream MiniApp vendors and related stakeholders have been working together in W3C Chinese Web Interest Group since May 2019 and published a MiniApp Standardization White Paper in September 2019 as the initial standardization exploration for MiniApp technologies. As more global companies get interested in joining the MiniApp related discussion, the MiniApps Ecosystem Community Group was proposed and approved during TPAC 2019 so that the global Web community can join the discussion.
During the exploration phase, potential standard requirements have been identified due to the unique nature of MiniApp in comparison to the typical Web environment. Substantial research work and joint discussion with related W3C groups have been conducted to clarify the requirements and possible solutions for MiniApp standardization. For instance, the hosting platform may or may not be a browser, and the application construction may or may not be based on web resources. Therefore different but relevant technologies are used for UI configuration and rendering, resource packaging, and the API access to local system capabilities. Such cases have not been fully covered by existing Web standards such as Web Packaging, Web App Manifest, or Web APIs.
The MiniApps Working Group aims to harmonize the heterogeneous MiniApp ecosystem, enabling interoperability among the different MiniApp platforms, maximizing the convergence of MiniApps and the World Wide Web, reducing the development costs and facilitating the adoption of this technology.
The work will be based on the specifications incubated in the MiniApps Ecosystem Community Group for MiniApp features, which include the following:
The Working Group will not:
The Working Group will deliver the following W3C normative specifications:
This specification defines a JSON-based manifest document that enables developers to set up descriptive information, window styling, page routing, feature policies, and other information of a MiniApp. The MiniApp Manifest specification will follow the recommendations of the Web Platform Design Principles to extend the Web App Manifest.
Draft state: In progress in MiniApp CG
Adopted Draft: https://w3c.github.io/miniapp/specs/manifest/
This specification defines the standardized MiniApp package structure and its construction method. The MiniApp package file includes all the application assets such as document templates, components, stylesheets, scripts, internationalization resources, security resources, and the manifest file. The MiniApps Working Group aims at defining a MiniApp package format to be processed by various runtime environment.
Draft state: In progress in MiniApp CG
Adopted Draft: https://w3c.github.io/miniapp/specs/packaging/
This specification defines the MiniApp lifecycle events and the process that enables developers to manage the lifecycle events of both MiniApp application lifecycle and each MiniApp page's lifecycle. MiniApp application lifecycle includes a set of events, including application initialization, application running in foreground, application running in background. MiniApp page lifecycle includes a set of events, including page loading, page first rendering ready, page running in foreground, page running in background and page unloading. Whenever possible, the specification should provide a mapping to existing Web specifications such as Service Workers and Page Visibility.
Draft state: In progress in MiniApp CG
Adopted Draft: https://w3c.github.io/miniapp/specs/lifecycle/
If additional in-scope Recommendation-track deliverables need to be added to the Charter before the Charter expires, the Working Group will prepare an updated Charter that differs only in deliverables.
The Working Group will not adopt new proposals until they have matured through the MiniApps Ecosystem Community Group.
This document defines a MiniApp URI Deep Link solution that will work across various MiniApp platforms, with reference to existing URI standard work in W3C and related standard bodies.
Draft state: In progress in MiniApp CG
Adopted Draft: https://w3c.github.io/miniapp/specs/uri/
This document describes the requirements for MiniApp widgets, a special form of MiniApp pages.
Draft state: In progress in MiniApp CG
Adopted Draft: https://w3c.github.io/miniapp/specs/widget-req/
Specification | FPWD | CR | PR | Rec |
---|---|---|---|---|
MiniApp Manifest | Q1 2021 | Q4 2021 | Q3 2022 | Q4 2022 |
MiniApp Packaging | Q2 2021 | Q4 2021 | Q3 2022 | Q4 2022 |
MiniApp Lifecycle | Q1 2021 | Q4 2021 | Q3 2022 | Q4 2022 |
MiniApp Addressing | Q1 2021 | |||
Widget Requirement | Q1 2021 |
Note: The actual production of some of the deliverables may follow a different timeline.
To advance to Proposed Recommendation, each specification must have two independent implementations of all defined features.
Comprehensive test suites will be developed for each specification to ensure interoperability, and the group will create interoperability reports. The group will also maintain errata as required for the continued relevance and usefulness of the specifications it produces.
Each specification must contain a section on accessibility that describes the benefits and impacts, including ways specification features can be used to address them, and recommendations for maximizing accessibility in implementations.
Each specification must detail all known security and privacy implications for implementers, Web authors, and end users.
APIs shall be demonstrated to be implementable securely before released.
For all specifications, this Working Group will seek horizontal review for accessibility, internationalization, performance, privacy, and security with the relevant Working and Interest Groups, and with the TAG. The WG will seek input into accessibility user requirements. Invitation for review must be issued during each major standards-track document transition, including FPWD. The Working Group is encouraged to engage collaboratively with the horizontal review groups throughout development of each specification. The Working Group is advised to seek a review at least 3 months before first entering CR and is encouraged to proactively notify the horizontal review groups when major changes occur in a specification following a review.
Additional technical coordination with the following Groups will be made, per the W3C Process Document:
The following is a tentative list of external bodies the Working Group should collaborate with:
To be successful, this Working Group is expected to have 6 or more active participants for its duration, and to have the participation of the industry leaders in fields relevant to the specifications it produces.
The Chair(s) and specification Editors are expected to contribute one to two days per week towards the Working Group. There is no minimum requirement for other participants.
Based on the input from the group participants, the Chairs may also decide to create task forces that allow more focused discussions for topics that require specific expertise.
This Working Group will also allocate the necessary resources for building Test Suites for each specification.
The group encourages questions and comments on its public mailing lists and document repositories, as described in Communication.
The group also welcomes non-Members to contribute technical submissions for consideration upon their agreement to the terms of the W3C Patent Policy.
Participants in the group are required (by the W3C Process) to follow the W3C Code of Ethics and Professional Conduct.
Technical discussions for this Working Group are conducted in public: the meeting minutes from teleconference and face-to-face meetings will be archived for public review, and technical discussions and issue tracking will be conducted in a manner that can be both read and written to by the general public. Working Drafts and Editor's Drafts of specifications will be developed on a public repository, and may permit direct public contribution requests. The meetings themselves are not open to public participation, however.
Information about the group (for example, details about deliverables, issues, actions, status, participants) is available from the MiniApps Working Group home page.
The Working Group’s Teleconferences focus on discussion of particular specifications, and are conducted on an as-needed basis. The minimum time required for notice of an ad-hoc teleconference should be 3 working days.
This group primarily conducts its technical work on the public-miniapps-wg@w3.org and on GitHub issues. Other communication tools are allowed if 80% of the group participants decide to embrace them. Any decision to use other communication tools must be reevaluated if further W3C Members join the Working Group. The public is invited to review, discuss and contribute to this work.
The group uses a Member-confidential mailing list for administrative purposes and, at the discretion of the Chairs and participants of the group, for Member-only discussions in special cases when a particular participant requests such a discussion.
This group will seek to make decisions through consensus and due process, per the W3C Process Document (section 3.3). Typically, an editor or other participant makes an initial proposal, which is then refined in discussion with members of the group and other reviewers, and consensus emerges with little formal voting being required.
However, if a decision is necessary for timely progress, but consensus is not achieved after careful consideration of the range of views presented, the Chairs may call for a group vote, and record a decision along with any objections.
To afford asynchronous decisions and organizational deliberation, any resolution (including publication decisions) taken in a face-to-face meeting or teleconference will be considered provisional. A call for consensus (CfC) will be issued for all resolutions (for example, via email and/or web-based survey), with a response period from 5 to 10 working days, depending on the chair's evaluation of the group consensus on the issue. If no objections are raised on the mailing list by the end of the response period, the resolution will be considered to have consensus as a resolution of the Working Group.
All decisions made by the group should be considered resolved unless and until new information becomes available, or unless reopened at the discretion of the Chairs or the Director.
This charter is written in accordance with the W3C Process Document (Section 3.4, Votes), and includes no voting procedures beyond what the Process Document requires.
This Working Group operates under the W3C Patent Policy (15 September 2020). To promote the widest adoption of Web standards, W3C seeks to issue Recommendations that can be implemented, according to this policy, on a Royalty-Free basis. For more information about disclosure obligations for this group, please see the W3C Patent Policy Implementation.
This Working Group will use the W3C Software and Document license for all its deliverables.
This charter for this Working Group has been created according to section 5.2 of the Process Document. In the event of a conflict between this document or the provisions of any charter and the W3C Process, the W3C Process shall take precedence.
The following table lists details of all changes from the initial charter, per the W3C Process Document (section 5.2.3):
Charter Period | Start Date | End Date | Changes |
---|---|---|---|
Initial Charter | 19 January 2021 | 20 January 2023 |
|
Copyright© 2021 W3C® (MIT, ERCIM, Keio, Beihang), All Rights Reserved.