others-Top 5 trending open source low-code platforms in 2022

1. Purpose

In this post, I would try to list top 5 open source low-code projects/frameworks that would be trending in 2022.I would try to make an ordered list of them by using quantitive method. Yes, 2022 is coming, are you ready for 2022?

2.1 What is low-code platform?

Low-code is a software development approach that enables the delivery of applications faster and with minimal hand-coding. Low-code enables developers to skip hand-coding, speeding up the process of getting an application to production.

image-20211125160001324

A low-code platform is a family of tools that enables the development and delivery of complete applications visually. A drag-and-drop interface is at the core of low-code platforms. Rather than writing thousands of lines of complex code and syntax, you can use low-code to build complete applications with modern user interfaces, integrations, data and logic quickly and visually. Applications are delivered faster and with minimal hand-coding.

A typical low-code platform consists of the following functions or components:

  • A visualized IDE support drag and drop: An env for visually defining the UIs, workflows, and data models of your application and, where necessary, adding hand-written custom code.
  • Connectors to various back-ends or services: Automatically handles data structures, storage, and retrieval.
  • Application lifecycle manager: Automated tools for building, debugging, deploying, and maintaining the application in test, staging, and production.

2.2 Why is the low-code platform important to software development?

  • You can speed up the development process by incooprating a low-code platform
  • Low-code platform makes your application modern and sophisticated, because Low-code enables you to take advantage of technology generally associated microservices and containers etc.
  • Low-code makes your application more bug-less. Your app would be more robust because low-code development prevent developers from some common mistakes by encapsulating some functions.

I choose them by the following factors:

  • Factor #1: The frequency of the code commitment.

    For example, the AcroDesign libary has a frequent development in October, but little commits in November:

    image-20211121192900260

  • Factor #2/3/4: The activity of the community(issues/problems/PRs)

    How long would the issue be fixed? How many issues posted in a period? What are they talking about in the discussion boards? How many questions posted ? How many PR(pull requests) submited? The following picture shows the activity of the Flutter communit, it’s an active and responsive project.

    image-20211121193419385

    And flutter is active in stackoverflow.com:

    image-20211121195817622

  • Factor #5: The documentation of the libaray should be complete and full of examples

    We can find good examples,tutorials and advanced development documents from the official website of the library. It should look like this:

    image-20211121194522577

  • Factor #6: The popularity in developers

    The UI library should be popular in frontend developers, most of them are learning it and trying to use it in their projects. This can be reflected by the Stars of the project:

    Screen Shot 2021-11-21 at 19.47.58

    GitHub stars

    The GitHub Stars program offers impactful developers an opportunity to showcase their work, reach more people, and shape the future of GitHub. If you know an inspiring community leader, we want to hear about it.

  • Factor #7: The maintainability(or SLA) of the library

    We know there exists an SLA(Service Level Agreement) in software operations domain, it requires the vendor of the software to keep the software running to meet the user’s requirements. The same rule applies to the UI library choice, the vendors or the community should keep the library active, we can rely on it if it’s developed by big companies like Google, Microsoft or Byte Dance etc, because they have more resources and impacts/responsibilities to realize this target.

  • Factor #8: The scalability of the library

    Sometimes, we want to scale the library to meet the custom requirements from users. There should be some extension points in the library, so we can use it create plugins or customizations for the library.

To conclude, there are 8 factors to be considered when choosing a UI library(or other types library):

  Factor Name Priority
1 Code commit frequency 15%
2 Activity of the community(issues) 10%
3 Activity of the community(questions) 20%
4 Activity of the community(pull requests) 5%
5 Integrity of the document 10%
6 popularity in developers 30%
7 maintainability of the library 5%
8 scalability of the library 5%

I give priority to each of the factors, which would be calculated in the result score, The priority is defined by my expertise, maybe it’s not very scientific, if you have any new ideas, please let me know.

2.4.1 TL;DR

The final comparsion result is as follows:

image-20211125161500239

Here is the detail score summary table of the low-code platforms:

image-20211125161539482

2.4.2 No 1: huginn

Huginn is a system for building agents that perform automated tasks for you online. They can read the web, watch for events, and take actions on your behalf. Huginn’s Agents create and consume events, propagating them along a directed graph. Think of it as a hackable version of IFTTT or Zapier on your own server. You always know who has your data. You do.

Andrew Cantino, the creator of huginn , said how he decide to create huginn:

“I started the project in 2013 to scratch my own itch — I wanted to scrape some websites to know when they changed (web comics, movie trailers, local weather forecasts, Craigslist sales, eBay, etc.), and I wanted to be able to automate simple reactions to those changes. I’d been interested in personal automation for a while, and Huginn was initially a quick project I built over the Christmas holidays that year.”

You can create various agents like follows:

For example you can create a twitter agent to monitor some tweets you interested in:

Basic information of huginn:

  • Officical site: https://github.com/huginn/huginn/wiki
  • Github: https://github.com/huginn/huginn

Score of huginn:

image-20211125164939782

2.4.3 No 2: node-red

Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways. It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click.

Node-RED allows you to create functionality by wiring together flows of data between nodes using a browser. And it has gained tremendous popularity in the IoT space, by modeling bits of application functionality between IoT devices like sensors, cameras, and wireless routers.

Why is it called Node-RED? The name was a light-hearted play on words sounding like ‘Code Red’. It stuck and was a great improvement on whatever it was called in the first few days. The ‘Node’ part reflects both the flow/node programming model as well as the underlying Node.JS runtime. We never did come to a conclusion on what the ‘RED’ part stands for. “Rapid Event Developer” was one suggestion, but we’ve never felt compelled to formalise anything. We stick with ‘Node-RED’.

Basic information of node-red:

  • Officical site: https://nodered.org/
  • Github: https://github.com/node-red/node-red

Score of node-red:

image-20211125172834042

2.4.4 No 3: Budibase

Budibase is an open source low-code platform, and a faster way to build business apps that empower teams and improve productivity.

Core features:

Build and ship real software

  • Unlike other platforms, with Budibase you build and ship single page applications. Budibase applications have performance baked in and can be designed responsively, providing your users with a great experience.

Open source and extensible

  • Budibase is open-source - licensed as GPL v3. This should fill you with confidence that Budibase will always be around. You can also code against Budibase or fork it and make changes as you please, providing a developer-friendly experience.

Load data or start from scratch

  • Budibase pulls in data from multiple sources, including MongoDB, CouchDB, PostgreSQL, MySQL, Airtable, S3, DynamoDB, or a REST API. And unlike other platforms, with Budibase you can start from scratch and create business apps with no data sources.

Basic information of Budibase:

  • Officical site: https://budibase.com/
  • Github: https://github.com/Budibase/budibase

Score of Budibase:

image-20211125173726902

2.4.5 No 4: frappe

Frappe, pronounced fra-pay, is a full stack, batteries-included, web framework written in Python and Javascript with MariaDB as the database

Frappe framework is based on Python, so it uses the virtualenv to setup isolated environments for multiple Python versions. You can also use it to deploy sites with different Frappe versions.

The following diagram closely resembles the frappe-bench directory structure and its interface with different parts of the stack.

Basic information of frappe:

  • Officical site: https://frappe.io/
  • Github: https://github.com/frappe/frappe

Score of frappe:

image-20211125174741497

2.4.6 No 5: ToolJet

ToolJet is an open-source no-code framework to build and deploy internal tools quickly without much effort from the engineering teams. You can connect to your data sources, such as databases (like PostgreSQL, MongoDB, Elasticsearch, etc), API endpoints (ToolJet supports importing OpenAPI spec & OAuth2 authorization), and external services (like Stripe, Slack, Google Sheets, Airtable) and use our pre-built UI widgets to build internal tools.

Here is a demo of the usages of ToolJet:

Basic information of ToolJet:

  • Officical site: https://docs.tooljet.com/
  • Github: https://github.com/ToolJet/ToolJet

Score of ToolJet:

image-20211125175513749

3. Summary

In this post, I make a predict about the top 5 trending open source low-code platforms. That’s it, thanks for your reading.