Appearance
Terminologies
HTML5
Encompassing HTML, JavaScript, CSS and related web technologies. For the public it means webpages, for mobile developers it means code snippets using these technologies, usually embedded in apps.
App
The standard software form on smartphones since the mobile internet era. Though formats and standards vary on iOS, Android, etc., they are software running on mobile devices, by nature indifferent from their PC counterparts.
Native App
Analogous to Windows desktop software developed in C++, Visual Basic, Pascal etc. Mobile apps use languages like Objective-C, Swift, Kotlin, Java, C, C++ supported by OS vendors.
Hybrid App
For diverse OSes like iOS and Android, the same business logic needs redeveloping with different tech, necessitating larger teams, longer cycles and inconsistent user experience across devices. Cross-platform solutions emerged using technologies like Flutter, React Native to build app foundations portable across OSes, and HTML5 for adaptable, business-focused, frequently-changed content.
SuperApp
A class of Apps like WeChat and Alipay transcend traditional software boundaries by becoming platforms, running millions of 3rd party code known as “Mini-App” or “Mini-program” securely within themselves, covering all aspects of life, harnessing massive business and societal resources, constructing digital worlds where users can largely reside without returning offline. Elon Musk praises such apps and aims to remake Twitter (now X) this way. Gartner's 2023 Tech Trends report dubs them SuperApp - no longer exclusive to internet giants and now entering enterprises.
Mini-App/Mini-program
Around 2017, WeChat introduced "Mini-program" technology. This was instrumental to WeChat becoming a SuperApp - Mini-programs have low development barriers, great mobile user experience, and can harness resources across society, serving as an enabler of "digitalization". Subsequently, other Internet giants followed suit, developing similar Mini-program syntax, formats and runtimes, releasing their own Mini-program technologies to compete for internet ecosystem share. By leveraging societal resources through Mini-programs, these platforms aim to emulate WeChat's success as a SuperApp. In 2021, W3C formed a group to standardize Mini-programs and called them Mini-Apps. In this paper, “Mini-App” and “Mini-program” terms are used interchangeably.
W3C Mini-App Workgroup
With the tremendous success of Mini-programs, more vendors participate, establishing this W3C group to standardize Mini-programs.
SuperApp Enabling Tech for Enterprise
Internet giants have obtained huge business value through their proprietary Mini-program technologies and centrally controlled SuperApp platforms. In contrast, enterprises across industries and even government agencies have been relegated to becoming passive ecosystem members on these external SuperApp platforms. Commercial organizations and government bodies long for similar technologies to attain autonomy - to assume platform operator roles, construct and govern their own digital ecosystems, accumulate their own data, and safeguard operational and customer data privacy. Fortunately, SuperApp technologies have now been standardized for enterprise adoption, enabling organizations to emulate the practices of internet SuperApps, independently harnessing Mini-Apps to build their own digital platforms and ecosystems.
FinClip Mini-App Spec
The Mini-program technology independently defined and developed by FinoGeeks maintains compatibility with mainstream internet Mini-programs in formats, interfaces, and specifications. This enables enterprise IT to reuse existing technical investments and talent, as well as leverage the sizeable stock of Mini-program content resources in society. It also supports related W3C standards, empowering enterprises through standardized technologies.
FinClip Mini-program Runtime
FinoGeeks, currently the sole independent vendor in this domain, commenced developing comprehensive Mini-program technology in 2019.It enables enterprises of any scale to cost-effectively obtain capabilities previously exclusive to internet giants, building their own SuperApps and digital ecosystems.
FinClip Security Sandbox
All Mini-program code is downloaded from the internet and executed on-demand. To ensure that this code poses no potential security risks to user devices, FinClip employs a secure sandbox technology within its runtime environment to isolate and execute Mini-program code. This sandbox also isolates any communication or sharing between Mini-programs.
FinClip SDK
FinoGeeks encapsulates the aforementioned Mini-program runtime and secure sandbox technology within an SDK. This SDK offers support for various operating systems, including iOS, Android, Windows, Mac, Linux, and more. To enable the capability of running Mini-programs within any existing app, integration of this SDK requires just a few lines of code.
FinClip SuperApp
A SuperApp built with the FinClip SDK, capable of operating unlimited Mini-Apps/Mini-programs.
Host App
In relation to Mini-programs, an App—whether it is entirely native or hybrid in nature—becomes a host for running Mini-programs once integrated with the FinClip SDK. This can be likened to virtualization technology, where the virtual machine is the guest, and the operating system running the virtual machine is the host. Mini-programs "reside" within the host. FinoGeeks' FinClip technology extends the concept of "host" to PC operating systems, IoT devices, and more. Therefore, strictly speaking, the host is not limited to mobile Apps, although in this context, unless specified otherwise, it can be assumed to refer to regular Apps.
Mini-program container technology
Isolates each Mini-program within its secure sandbox, allowing individual instances to run independently in their dedicated memory, threads, and storage and making them invisible to one another, akin to placing each Mini-program instance within its own "container". This containerization is key to achieving economies of scale for SuperApps.
FinClip utilizes containerization technology to ensure the security and portability of mini-programs. Each mini-program runs within an isolated container, which not only guarantees the isolation between mini-programs but also ensures their consistency across different devices and platforms.
Mini-program Runtime Lifecycle
When a Mini-program instance is loaded into the host, its various states such as initialization, visibility, invisibility, and destruction are collectively referred to as the "Lifecycle." State transitions are typically triggered by user interactions within the host.
Mini-program Publishing Lifecycle
The various stages a Mini-program goes through, including development, testing, grayscale/canary release (partial deployment), production release (full deployment), and termination, collectively constitute its "publishing status."
Grayscale/Canary Release
A real-time risk control mechanism that can manage applications about to be published by implementing whitelist controls over the visible scope of business scenarios and by having the ability to remove any mini-program from the platform at any time, thereby immediately terminating potentially risky scenarios. For example, during the onboarding review process, a mini-program can be operational in a live production environment but only visible to relevant approvers. The advantage of this approach is that approvers no longer have to rely solely on internal OA document circulation and written descriptions to understand a business situation; they can experience the risks firsthand as users. The audience scope of the official release remains controllable until it is fully opened up. This allows enterprises to gain real-time control over quality risks, compliance risks, and uncertainties brought about by innovation.
Host Lifecycle
For mobile devices like smartphones and tablets, the host app lifecycle is typically associated with the mobile operating system and the app stores operated by mobile manufacturers. It's important to note that the "Mini-program publishing lifecycle" is entirely separate from the host's publishing lifecycle. Mini-program developers and host developers may have no connection, which is a key factor in achieving SuperApp economies of scale (as discussed later).
Zero Trust
A security model first proposed by Forrester Research analyst John Kindervag in 2010, departing from traditional IT security models focused on protecting network perimeters and assuming everything inside is trusted. Zero trust presumes no implicit trust in any person or device inside or outside networks.
API (Application Programming Interface)
FinClip offers a rich set of APIs that allow developers to easily integrate mini-programs with various external services and data sources. For instance, developers can use APIs to integrate payment services, social media platforms, or any other required external systems.
IDE(Integrated Development Environment)
FinClip provides an Integrated Development Environment called FinClip Studio, specifically designed for mini-program development. FinClip Studio offers a user-friendly interface with integrated features for code editing, debugging, previewing, and packaging for deployment, allowing developers to efficiently develop mini-programs in a unified environment. Additionally, FinClip Studio supports seamless integration with the FinClip SDK, further simplifying the development workflow.
CI/CD (Continuous Integration/Continuous Deployment)
While FinClip may not directly provide CI/CD tools, its SDK and platform design allow developers to easily integrate existing CI/CD solutions such as Jenkins, GitLab CI, etc., to achieve continuous integration and continuous deployment of mini-programs.
SDK Extension
If a host application possesses certain technical capabilities such as payment processing, facial recognition, live video streaming, OCR, and more, and wishes to expose standard interfaces for mini-programs to invoke, developers or partners of the host app can implement these technologies as plugins according to specific guidelines. This integration injects these functionalities into the SDK, thereby extending its capabilities.
Cross-Platform Compatibility
A key feature of FinClip is its cross-platform compatibility. The FinClip SDK supports running mini-programs on various operating systems including iOS, Android, Windows, Mac, Linux, and more, allowing developers to serve a broad user base without the need for separate development for each platform.
FinClip App Store(based on Mini-Program technology)
A management hub for overseeing the deployment and retirement of FinClip mini-programs, equipped with capabilities for review, monitoring, and data collection and analysis. By deploying this technology, any enterprise can establish its own app store and manage its application ecosystem on a large scale. Sometimes, in certain contexts, it is also referred to as the App Market.
FinClip Developer Portal
The Development Center on FinClip's web platform is designed for mini-program content creators to manage and publish their mini-program applications, or to edit and manage their own host applications. It also offers a wide range of features such as gray release, version management, and statistical analysis, all aimed at helping users better manage their own mini-program content applications.
FinClip Administration Portal
The Digital Center is used for managing all content within the current mini-program ecosystem. It is intended to help users comprehensively manage and operate their own mini-program ecosystem networks.
FinClip Mini-Program Platform
This solution specifically refers to an end-to-end technical solution built on FinClip technology by Finogeeks, which includes: the sandbox SDK for running mini-programs, a Developer Portal
for managing the launch and retirement, gray release, and risk control, a Administration Portal
for managing developer accounts, an IDE
to empower developers, mini-program running and testing assistants, as well as code conversion tools, all forming a comprehensive technical suite.
FinClip Site
A standalone deployment of the FinClip technology platform, this instance is associated with a unique Site License that is bound to a specific network domain name, granting the enterprise owning that domain the authorization to operate and use the platform. The Site License is issued by Finogeeks. A single Site encompasses one app store, one management center, and one developer account system, all owned by the enterprise holding the Site License. Mini-programs within the app store are designed for and can only be loaded and executed by two host environments. Enterprises wishing to run mini-programs in additional host environments must purchase additional host environment digital certificates from Finogeeks.