The product managers behind FinClip find that many developers or business department friends are curious about what problems FinClip can solve when they first learn about it, and often compare FinClip with UNI-App to consider the differences, advantages and disadvantages.

Therefore, in this article, the product manager of FinClip will discuss with us the differences between FinClip and UNI-App, as well as their strengths and weaknesses. Uni-app is a great framework for front-end application development, but it doesn’t solve all of the problems that companies face when it comes to digital transformation and writing applets.

As the product designer behind FinClip, my views may not be neutral (I try to be as objective as possible). You can visit www.finclip.com/ to learn more about our products and features.

1. Design differentiation

Uni-app is a front-end framework designed to solve cross-end application development problems

Uni-app is a front-end development framework designed to solve cross-end development problems. Uni-app creates a set of code that can be distributed to iOS, Android and H5 platforms.

With the official IDE tool HBuilderX provided by UNI-App, the code written in IDE can be compiled and previewed in third-party developer tools (such as wechat developer Tool, Baidu Developer Tool, etc.) directly through the HTTP service. Package into the corresponding applets resources.

HBuilderX can run applets directly from third-party developer tools

Essentially the ability to call the external interface of a small program development tool

UniMPSDK is a front-end framework for running applets

If you want to integrate applets into your existing App, you can also use uni-App’s Applets SDK (officially called uniMPSDK and only available in native apps based on Uni-App). Integrating the corresponding uniMPSDK into an iOS or Android app can also achieve the effect of maintaining a set of small program code that runs on both clients.

Uni Applets SDK introduction documentation

Uni-app also provides rich ecological resources for developers. For example, DCloud officially provides the function of plug-in market. Developers can integrate plug-ins into their own applications or mini-programs according to their business choice, or become plug-in developers to upload and share their own plug-in resources.

Uni-app has developed over the years with a high level of maturity and resources in the development community. Many developers can learn vue.js front-end syntax and write cross-end mobile applications quickly with the help of Uni-App. With the new uniMPSDK, developers can also run applets in their own mobile apps.

But uni-App still hasn’t solved some of the problems with native development:

  • Limited performance optimization, suitable for some simple scenarios or small programs. If you want to implement complex scenarios and business applications, you still have to rely on native;
  • The maintenance and migration costs are high. For example, UNI-App can only use the official cloud packaging, deployment, statistics and advertising alliance services, and the use of third-party services is limited (understandable, after all, uni-App does not have to pay).

However, if we turn to the uniMPSDK (the small program SDK provided by Uni-App), there are some problems with the experience:

  • Uni-app framework must be used to develop applets. Wechat applets running pure WXML are not supported.
  • Small programs still use Webview rendering or React Native rendering (WEEX) technical architecture, performance is limited;
  • With the integration of uniMPSDK, the size of the App package may increase by around 7-16MB;
  • Currently, the SDK can only be integrated in iOS or Android applications, and cannot be adapted to other platforms.

In addition to the official community, you can find different voices of users in many places. For example, in zhihu, the question and answer “It’s 2021, how is uniApp developing?” “Is full of sounds for uni-app.

Some netizens describe UNIAPP with “small reactive power”

FinClip is a light application platform and a connector for the digital transformation of enterprises

Unlike UNI-App, FinClip is not positioned as a cross-end application development framework, but as a technology platform for light applications (applets are a subcategory of light applications). It consists of the following components:

  • A secure sandbox (FinClip SDK) that can run small programs, integrating mobile software, PC software with host environment including Internet of Things device software through embedded SDK;
  • An app store (FinClip management background) provides application discovery (display, search and recommendation) mechanism, removal and gray publishing management background;
  • A series of development and monitoring tools (such as FinClip IDE for code writing, FinClip App for small program preview);

You can learn more about the product in FinClip Product Manual

With the combination of the security sandbox, app store and development tools, developers can have a great time designing and developing applets (down to lifecycle management).

In the real work, we often encounter a problem is “although there are already many small application platform in the market (such as WeChat applet, byte small programs, baidu intelligent small programs, pay treasure to small programs, etc.), but as a result of WeChat head flow status, most of the time we will first develop WeChat platform of small procedures, according to actual business again after this scene, Choose to migrate applets back to your own application.

In this process, it is difficult for the business party (or Party A) to decide whether to upload the small program to multiple small program platforms at one time at the very beginning of project establishment. Since the role of “wechat” in the market as a national application cannot be replaced by other applications in the short term, most enterprises will make such a choice after weighing the advantages and disadvantages, that is, “first put the wechat small programs on the shelves, and then migrate the wechat small programs to their own mobile applications”. In this process, It may also involve retrofitting existing H5 services through applets. Therefore, the content we pay attention to will be changed as follows: the development of wechat applets → the transfer of wechat applets to their own applications → some applets will not be put on wechat for the time being, but they need to have a unified syntax and framework, and the cost of learning and migration should not be too high

As you learn more about FinClip, you will gradually realize that FinClip and uniMPSDK have different design ideas (UniApp is the front-end development framework, no comparison is made) :

Compare uniMPSDK with FinClip SDK

Since FinClip pays more attention to the whole life cycle of small apps, we also focus all our research and development efforts on “making small apps in our App run as smoothly as small apps in wechat”. Therefore, no matter iOS App, Android App, Flutter App, RN applications, and even Windows applications, can integrate with the FinClip SDK and run either wechat applets or applets based on third-party frameworks.

Through the management background, we can also manage the description information (such as profile picture and title), associated application (associated with a mobile application) and the version of the small program, so as to solve the hot update of the small program and meet the needs of operation. Even if the developer does not release the App in the App Store, we can still update the resources of the applet. Once the user installs and opens the App, we can implement the function of “thousands of faces” according to the configuration of the rule library.

2. Actual use

As mentioned earlier, since uniMPSDK only supports applets generated based on the Uni-App framework, let’s try generating a third-party applets DEMO via HBuilderX to see the difference.

We first selected the default UNI-app template in HBuilderX

After successful creation, choose to run it in wechat developer tools

The code can run normally in the wechat developer tool

The code also works in FinClip’s IDE

Next, let’s try running a native wechat applet to see if it works in FIDE or Uni-app.

We selected the JavaScript base template in the wechat developer tool

Run it after it is created successfully

Applets can also be run in FinClip’s IDE

In HBuilderX, the code can only be compiled into wechat applets

As described in the official uniMPSDK documentation:

  • Uni Applets SDK only supports applets developed using UNI-App and does not support pure WXML wechat applets to run. Uni-app, however, supports applets in WXML format;
  • Currently uni Applets SDK only supports integration in native apps, not in HBuilderX packaged apps.

This means that if you want to transfer the existing wechat applet to your own App, you cannot use HBuilder (Uni-app) unless the applet is originally designed based on uni-App. If you want to integrate an applet with an existing App, you can only integrate it with a native App (iOS or Android), and multiple apps packaged with HBuilderX can’t integrate the applet.

In addition, the comparative management background, we find in the uni – app, in addition to provide developers with the application management (including statistical analysis), provides more around “advertising alliance, plug-in market, cloud packaging value-added services, message authentication code and a key to login” function of value-added services, to the extent of little concern to the program itself is limited.

DCloud Developer Center

In the management background of FinClip, it provides a complete management service for the whole life process of small program centering on the functions of applets, applications, development and data statistics. Whether it is the version audit and removal related to the small program, the rule making and implementation of gray scale release, or the domain name and certificate management related to security, all provide corresponding services around the small program and application itself.

FinClip manages the background

Why can the removal of applets solve the problem of App hot update? Most of the time, after users click the small program in the App, they will request the resources related to the small program through the network service. If the business behind a small program fails and becomes unavailable, the App must be updated to solve the problem. You can remove an App from the FinClip management background without changing the App. When a user clicks an App in the App, a message is displayed indicating that the App has been removed, preventing service faults from directly occurring on the user side.

summary

Since then, we have preliminarily compared the differences between the two products. Although similarities and differences may be confused by product description and promotion differences when you first learn about the product, readers should feel that the two products are fundamentally different.

  • Uni-app is designed to solve cross-end application development problems. By using vue.js to develop the framework for all front-end applications, uni-App ensures that developers can write a set of code and distribute it to multiple apps and applets. However, it cannot guarantee smooth application experience and performance loading problems.
  • As a front-end framework for small programs, uniMPSDK only supports small programs developed using uni-App development framework. Existing wechat small programs cannot be migrated to their own applications, nor can they be embedded in apps exported through UNI-App.
  • FinClip is a set of applets ecosystem. By integrating the FinClip SDK and operating in the background, developers can easily provide the ability to open applets in their own apps. Small programs exported by the user through UNI-app can also be compiled and run in FinClip.

3. What is the fundamental difference

In the previous article, we compared uni-App, a front-end application development framework, with FinClip, a lightweight application platform. As a front-end development framework, the main goal is to reduce the developer’s development cost as much as possible by encapsulating different functions and providing a set of solutions.

From this perspective, UNI-App does solve the problems faced by front-end application cross-end development. In some display or small scene customization projects, it can significantly reduce front-end development costs and improve human efficiency. Of course, there are other products on the market that try to solve the same problem, such as Flutter, which considers cross-application from the bottom, Taro, which focuses on unified launching of multi-terminal applets, Antmove, which focuses on conversion of applets format, and so on. All of them have unique advantages compared with other products.

Unlike these products, when we first designed the FinClip product architecture, we did not intend to define the product as a solution solely for cross-end (technology stack) applications. We were never limited to one development framework. To clarify this topic, let’s talk about some of the abstract but very important parts: What are the components of FinClip?

FinClip consists of the following three parts:

  • End side
  • Cloud side
  • The development tools

Next, let’s introduce these three parts in detail.

1. The end side

The end of FinClip consists of embedded operating SDK and host side.

There are three main tasks for FinClip SDK: first, to ensure that the small program code can be interpreted and rendered in the App and become a front-end page that users can read and see; second, to ensure that relevant business requests are used in a secure and controllable environment. You also need to verify the SSL certificate that the network request port is bound to the user, and you also need to load the related applets through the SDK.

To ensure that applets can be interpreted and rendered in the App, we support all applets generated based on Taro, KBone or UNI-App frameworks synchronously. Regardless of which framework the developer chooses to develop the applets, the resulting applets can be run in the App via the FinClip SDK.

The host side refers to the host application integrating FinClip SDK. Whether we want to run applets in mobile applications, want to run applets in computer applications, or are born with the ability to run applets at the system level, we need to integrate THE SDK to have the ability to run applets. FinClip can run mini programs on iOS, Android, Windows, domestic operating systems (such as UOS), and IoT devices (such as vehicular systems). Support and adaptation of macOS, Linux, and Internet of Things systems is also in progress.

2. Cloud side

The cloud side of FinClip consists of the app Store and developer center (currently an open platform for applets).

We not only focus on enabling the App to run applets, but also provide a developer center that allows developers to modify basic details of applets (such as applets name, applets classification, keywords and description information) in the App Store so that users can easily search the applets from the end. Developers can also operate the small program on the cloud side, set the small program as the experience version for testing and preview, according to the user attributes and identity information to set different grayscale release plans, so as to facilitate end users in different network and environmental scenarios to see the “thousands of thousands of faces” small program information.

In addition, for the enterprise internal has multiple systems of large corporate clients, also can be in the side of the cloud management background to set of users and roles, according to the different lines of business or the identity for the login background of users to set the corresponding role permissions, or according to unified login agreement between a variety of information systems within the enterprise perfect internal debugging of the single sign-on (sso) process. So as to better provide the required capabilities according to the internal digitization needs of the enterprise.

3. Development tools

Beyond the side of the end and cloud, we have a wealth of development tools and ecosystems for developers to use.

For example, IDE tool used to complete small program code editing and debugging, mobile development assistant FinClip App used to complete the preview of the real effect of mobile terminal, small program application market used to obtain more small program resources or related plug-ins and so on.

In addition, for individual developers, FinClip community edition products can be deployed free of charge, including the applets SDK and the admin background, which is limited to the number of applets and associated applications that can be created. Most features are available free to developer users. All of these resources can be found in the FinClip download center or in the Applets ecosystem.

4. To summarize

Uni-app is a front-end framework designed to solve cross-end application development problems. If front-end developers are accustomed to using vue.js for various front-end projects, they can easily generate cross-client and cross-platform applets based on UNI-App. Uni-app can also be used by customized solutions for small and micro projects to quickly meet customer requirements and reduce their own r&d costs and improve r&d efficiency in the process.

FinClip pays more attention to applets themselves. It not only provides a cross-client and cross-system applets sandbox for customers to run existing applets in their own apps, but also has a comprehensive developer center to help developers manage and control the full life cycle of applets.

But we also have a more long-term consideration: in the process of digital transformation of enterprises, the existing Web application with the H5 application will have to face the need to improve the user experience and business performance, and in the process of steering through a small program to provide services, and how to in traffic platform has been in a small program migration to its own App stores? How to make your own App have the underlying container engine to run small programs?

Our small program solutions not only solve the “small program migration” problem that enterprises are facing today, but also help enterprises think for years (or even longer) without having to find new solutions based on new problems.

Therefore, in addition to the operation of the small program itself ability, FinClip also has the ability to manage the whole life cycle of small programs, in association with the existing information system within the enterprise, also offers a complete automation, customized support related tools and resources, so that they can more reliable and credible to help enterprises to complete the digital transformation process.