MiniApp - A W3C Standard From China
Written by Ian Elliot   
Monday, 16 September 2019

If you haven't heard of MiniApp then this might be because it's an idea out of China. The Chinese Web Interest Group has published a W3C working draft of the specification. So what is a Mini App?

The first thing that is important is that the Chinese Web Interest group has now two "task forces", one focused on Media and the other on Mini Apps. Its charter states:

"The Chinese Web Interest Group provides a forum for W3C members to enhance the participation in Web standards work from the Chinese Web community. The group will focus primarily on identifying unique requirements from China, on helping the Chinese members to get familiar with the process of W3C standards activities, on discussion of technical ideas with the potential to be proposed to W3C, on standards testing and implementation, as well as corresponding standardization opportunities for W3C while assisting the participation and contribution from the Chinese Web community."

This first white paper is an attempt to define what a Mini App is and I have to say that after reading it I'm still not clear how to start writing a Mini App. It is clear that it isn't a PWA and its main difference seems to be that it works within a native App. It's a sort of web extension of a native App:

Mini Apps got popular from their usage on a few super-apps, as it was born with a few characters that help to fill the gap of the Web and the Native. 

  • It's free of installation.
  • Multiple webviews to improve performance.
  • It provides a few mechanisms to get access to OS capabilities or data through the Native.
  • The content is usually more trustworthy because the app needs to be validated by the platform.
  • A mini app can be distributed to multiple MiniApp platforms (the Web, a Native App, even the OS). These platforms also provide entry to the miniapp to ensure it can be easily discovered by the users.

This all sounds good, but as the Mini App is an extension of a native App there isn't a lot that can be standardized.

There is a basic suggested architecture:

miniapp

You can see that we have a View-Model-type split and the JS Bridge is the link to the native App. The logic layer is intended to be implemented by a Web Worker and so there is going to have to be some standard way of connecting the two. It is also suggested that the Mini App can be used by the native App as if it was a fragment of its UI. The idea is that a standard API could be set up allowing different apps to install Mini Apps as required. The only problem is that we don't have such a standard, nor one for packaging and installing Mini Apps.

miniapp2

The white paper has a section listing Mini Apps that have been developed by various companies including Alipay and Baidu. It also refers to Quick App which is a standard developed by 12 phone manufacturers including Xiaomi and Huawei. I suspect that this will end up being the major part of the Mini App specification.

The paper ends with lots of proposals for firming up a specification and it is clear that there is a lot to do before I can sit down and write a Mini App that I can expect to work with a range of different native Apps.

It seems to be a good idea, but I'm not 100% convinced that there are enough use cases for providing plugin data and UI providing Mini Apps into a range of native Apps.

More Information

MiniApp Standardization White Paper

Related Articles

PWA Becomes TWA And Enters Play Store

Progressive Web Apps Do Seem To Be The Next Big Thing

Google Starts Its Push To Progressive Web Apps - Bye Bye Chrome Apps

JavaScript Async - The Fetch API

All A Flutter - Google's Cross Platform App Framework Ready To Go

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

Banner


Kotlin Ktor Improves Client-Server Support
04/11/2024

Kotlin Ktor 3 is now available with better performance and improvements including support for server-sent events and CSRF (Cross-Site Request Forgery) protection.



Improved Code Completion With JetBrains Mellum
29/10/2024

JetBrains has launched Mellum, a proprietary large language model specifically built for coding. Currently available only with JetBrains AI Assistant, Mellum is claimed to provide faster, sm [ ... ]


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

Last Updated ( Monday, 16 September 2019 )