The future of software development is low code!
This is a quick guide to using the most feature-rich low code platform in 2021 – Hypi!
You are already in the future when you have made up your mind to use Hypi for Application development.
There may be a few low code platforms out there but Hypi provides everything that you need to build data-driven applications in a single comprehensive platform.
What makes Hypi the most feature-rich low code platform of 2021? In this guide, we will look at its amazing features.
Data-driven application development using Hypi is based upon creating Apps. You construct building blocks called App. Each App can be treated like an npm package/dependency or you can create instances from them and connect your front end to them using Hypi’s API endpoints.
Hypi is a low code platform with serverless backend features. In Hypi modelling your schema is your core job – both your data model and API is configured in your App’s schema. Data models are written in GraphQL’s SDL.
However, you need not know GraphQL. Hypi’s User Interface makes it easy to build the data models. As your understanding of GraphQL grows, you can add data models manually in Hypi’s Schema Editor.
Once the schema is ready, you create an instance and start querying the relational database. An instance domain gets created with a unique API endpoint, and you make an HTTP request to that endpoint to execute queries. You can then populate the front end of your application with the results of your queries.
This is the typical flow of data-driven application development using Hypi. You can get started simply with your first low code backend on Hypi.
The User Interface of Hypi is user-friendly. Creating tables, editing schema becomes easy on this low code platform. You do not need to write any code to create a data model or you can dive into the code and go custom.
Relational Database Queries
In relational databases you create tables to store data, insert/update, retrieve, and delete data. All these basic CRUD operations are possible using Hypi’s low code APIs. Hypi’s cloud storage makes it easy for you to handle the data operations of your data-driven application. When you’re ready, serverless computing is available to build any custom functionality your applications need.
As you know Hypi is a low code platform, you need to write few lines of code to make use of Hypi’s APIs, in some cases…no code at all. Hypi is quick and easy to learn. Say goodbye to complex SQL queries! Write your queries with simple ArcQL queries and execute CRUD data operations.
We said that Hypi is the most feature-rich low code platform of 2021. So, we’re not limited to simple CRUD operations. With Hypi, you can write aggregation queries to group or count the data. You can also perform mathematical operations by using the Maths APIs. You can create references between different tables by linking the objects. And Yes! This is all possible with low-code APIs!
Check out this tutorial on CRUD Operations!
Want to know more?
Hypi’s directives help you to customise the behaviour of your data model. If you want to have some customisation like checking the lengths of String or Array fields or applying past and future date validations, you may do so using the directives provided by Hypi.
App Dependencies and Environment Variables
Gone are the days to create stand-alone apps which implement all the functions…
Create an app, add another app and inherit the functions of the first app. Start creating building blocks and connect those blocks using the ‘Dependency’ feature of Hypi! Reuse is the Mantra of this low code platform. (Re)Use it as you please!
Hypi lets you define the environment settings in your system that describe the environment. These are key-value pairs to define configuration options for your App. Many applications require settings at run time which change depending on some criteria specific to the app or its users/environment. Environment Variables let you provide these settings.
Authentication and Authorization
Hypi is a secure low code backend platform. It keeps all data private to the account which created it by default. It offers authentication for creating and logging into an account. The Authentication is JWT token-based.
Many applications require their users to have certain permissions before they can perform a given action. Hypi has built-in support for extensive permission and authorization control. You can define a Role, Group, Account based permission and more that uses different authorization policies to control who can perform a database operation and when…or to share private data with other accounts.
User Defined Functions
You may need to add custom code to your App within your data-driven application. This custom code implements the functionality that stands outside of what the built-in APIs of Hypi offers. User Defined Function (UDF) is what you need to write this custom code. Execute User Defined Function like any other built in function! They are considered lightweight compared to serverless functions because they are evaluated on the same server where the calling code is executed.
Currently, two languages are supported for UDF; i.e. Groovy and Velocity. It does mean you need a basic understanding of using these two programming languages (but if you don’t know them…that’s where serverless functions come in!). You need to write few lines of code to define the User Defined Function and then call that function from your instance.
Infrastructure, Deployment, and Maintenance are hurdles in the rapid development of data-driven applications. So developers take refuge in serverless computing.
Serverless computing using Hypi is merged into the rest of the low code platform seamlessly. The standard OpenWhisk CLI and all its commands are available so simply create an OpenWhisk function defined using any supported programming language.
Create and invoke a function (called an action in OpenWhisk). Access the serverless function on Hypi by referencing the function in your low code schema. You may implement advanced functions using OpenWhisk like sequences, webhooks, triggers as well.
Workflows are useful for handling sequential events. Let’s say you want to execute one function after another and you need the results of the first function to execute the second function. A workflow will handle these kinds of events for you.
Workflows are everywhere when it comes to processing events. E.g. Employee onboarding workflow, Content Marketing Workflow, YouTube Upload workflow, Travel workflow, etc.
Workflow implementation using Hypi is simple. Design the steps of the workflow and create an order of events. Execute the functions (work) inside the steps. Get the result after sequential processing of steps or functions. You may check the results of individual steps as well.
Want to automate the response to an event ( E.g. sending an auto-email or validating an entry into a table)? Triggers come to the rescue. In Hypi, triggers are supported with both ‘before’ and ‘after’ semantics. You may also override the built-in Hypi function using a trigger.
Trigger helps developers to maintain the integrity of data. It is an essential element of any data-driven application. Hypi is there to help implement the Trigger!
Webhooks can be used to report the occurrence of an event in a system. WordPress for example can notify a webhook with the notification of a new post. PayPal uses it to notify on the payment to an application. MailChimp uses it to sign up users from a website for a newsletter. Webhooks surely need a place in data-driven applications.
Hypi supports Webhook as well. You need to write a function to process the webhook request. A webhook object needs to be created in an instance to receive a webhook HTTP request through an endpoint.
Hypi hosts your files and fully integrates them within the schema. Let’s say you need a thumbnail image for an account in your Messaging Application. You just need to upload the file. Hypi automatically handles everything; security of the file, download option, availability, etc. The file can be a text file or an image file. The file format doesn’t matter.
The file can be uploaded using an endpoint from a local folder system or virtual file system like Google Docs, OneDrive, etc. Once it is uploaded, an object of ‘File’ type gets created.
The REST endpoints in Hypi allows you to use standard REST-like requests to execute queries against your instance. REST API methods are available for all database operations like CRUD or Authentication functions. Executing RESTful APIs is just easy with the Hypi platform!
We all forget passwords for various accounts. It is human nature. So modern data-driven applications always require password reminder/reset functionality. Hypi supports it in few easy low code steps. The platform supports the creation of the PasswordReminder object that sends the password reset code to the email of the user. The client application needs to handle the user interface for resetting the password. Once, the password gets reset just the API with the reset code and new password, this will to make the Password Reminder object invalid and change the user’s password.
Hypi’s Command Line Interface (CLI) is in early access mode. It will facilitate using Hypi APIs with Client Applications. Instead of using the Hypi UI to work with Apps and schemas, developers will be able to define everything in their git repository and with a quick
hypi sync all local schema changes will be reflected in your instance. This will enable you to keep a version controlled copy of your app’s schema and provide Hypi generated client code for your favourite framework (Flutter available, React, Vue, Angular and others coming soon)
Creating a Messaging App or Payment App or Social Media App? Use Hypi’s low code features and integrate them with your Application.
This quick guide was a wild ride teasing some of the essential features of Hypi to demonstrate why it is the most feature-rich low code platform for use in 2021. If any feature is missing from this list, just let us know!
In the next series of posts, we will publish tutorials that will look at the features above in detail. There is even more available in Hypi’s platform, see the documentation for more at docs.hypi.app.