Why is Cliosight unique?
Switch from conventional low-code to abstraction through
configuration to create secure, portable and interactive widgets in
minutes. Our users can get started using four foundational
technologies that continue to dominate web development.
SQL - The universal language for querying structured data.
JSON - A popular format used in enterprise data
exchange.
HTML/CSS - A structure for creating web pages with styling.
Data Modeling - A necessary skill for understanding business requirements and data flow
Structure of a Cliosight application
In the first release of our platform, we
concentrate primarily on structured data. This is typical to what is stored
in
spreadsheets; that which can be migrated to a relational database
and
retrieved using
SQL as a query language.
A Cliosight application is composed of forms, reports, charts,
triggers, jobs, workflows, and single-page applications (SPA). They
are connected
to one or more relational databases.
They may also be interweaved in structure so that an update in
one is reflected in others through inter-widget communication.
Let's look at each one below.
Form - A form is created for
collecting data into one
or more relational database tables. It is the main UI for data
input.
Report - A report is used to visualize
data
in a
tabular format. However, other essential uses may
include exporting query
results, updating table rows manually, sharing and generating
files or
to
extract data into a JSON object.
Charts - Charts are embedded into
reports. There are various
configuration options for charts to enable or disable it, change the
type
(pie/bar/line/stacked),
report columns and metrics etc.
SPA (single-page application) - A
single page application is a
collection of related reports and forms organized in separate tabs
in
the final dashboard application.
An application thus holds several of these SPAs related to a
business
use
case. For instance, bug tracking in project management.
Automation - A trigger can be used to
update
the row of a report
based on specific conditions. A job can be scheduled to perform
tasks at
certain time intervals. A workflow is a group of connected jobs and
triggers
manipulating data across several cloud data management services.
Depending on the access rights assigned by the admin,
actions can be
performed by a user from within a data application or by logging
into their
account. The admin console also provides an interface
to
run queries directly
on a database.
The JSON Framework
The final deliverable of a database project created within this
platform
is a collection of single-page applications.
However, a form or a report can also be shared individually.
Forms, Reports, Charts, SPA, Application, Triggers, Jobs,
Workflows and Datasource definitions can all be
specified using a JSON config.
The tags not only describe the front-end and back-end, but also
the database
tables with references to the bindings and other resources. Users
and groups are included in the config.
The output of a SQL query in the admin console is also a JSON
string.
The data once fetched into an in-built datasource can be used in an
external project.
Our platform can also be an ideal ETL or data migration tool.
Access Control, Data Privacy and Security in Cliosight
An admin (root user) can provide role-based discretionary access to other users and groups to perform controlled CRUD operations through forms, reports, pages and applications. Managing datasources, adding automation to apps, and creating users and groups are only available to the admin.
The following measures ensure that data stored and exchanged is
protected from intrusion:
1. Prevention of SQL injection attacks.
2. Inability to scrape data using a non-public report URL.
3. Upper limit on data transfer within a timeframe to block
excess API calls.
4. Prevention of unauthorized access to a database or other
assests through a public URL.
5. Secure setup of a client's development environment to protect
all resources within an account.
6. Securing the data exchanged with a remote server.
Cliosight as a Data Aggregator
With atleast 50 MB of disk space for databases, a user can get started by fetching data through a form, with an option to import it from a CSV file, or by connecting to an external datasource. Irrespective of the pricing tier, users can add any number of datasource configs to their account.
We will support the following datasource categories -
CSV Files - Text and
Spreadsheets.
SQL databases - MySQL, MS SQL
Server, Postgres and
others.
Cloud
data management systems - Google Big Query, AWS
Redshift, Snowflake etc.
API and
onchain.
Initially we will support MySQL, MS SQL Server and
PostgreSQL only, apart from REST API for data ingestion from an
external source.
As mentioned, individual databases can be managed directly by an
admin.
Multiple SQL queries can be executed at once in
the admin console.
Storing files
Users can store large files such as PDF documents, images, audio files and videos with atleast 100 MB of allocated space. File storage is priced differently when compared to databases. Although cheaper, the network bandwidth is capped based on the pricing slab. This may also effect the download speed or quality of the multimedia files accessed through a browser. Access can be restricted so that large files like pictures, videos, ebooks etc. can be shared securely.
Integrations for extra functionalities
We want to provide all the
capabilities needed to develop apps that help in promoting business
growth.
For this, we have integrations like the ones listed below -
Notifications - Email, Whatsapp, SMS
and push notification available for Professional and Enterprise
users with maximum limits.
Cloud email services like AWS SES (AWS Simple Email Service),
Mailgun,
or a dedicated email server can be provided to a client on request.
AWS SNS, SendGrid or even client's own
paid SMS service can be integrated into the application for running
marketing campaigns.
AI - With APIs provided by the top LLM
providers like OpenAI,
Anthropic Claude and Google Gemini, we can help users write SQL
queries and
the JSON configs.
Payments - We can add Paypal, Stripe,
UPI and other means of
online
payment on-demand.
Cloud services - We can add
AWS, GCP and Azure services related to data management,
notifications,
analytics and others. The list of
external datasources are already mentioned in the previous tab.
These integrations are manual customizations that have to be requested through our customer support portal till we automate the process. The price details of each will be shared later.
Platform Customization
Customization is available as a paid service. Clients will be charged
based on the use case and estimated effort.
Customizations may include:
1. Addition of new tags for a domain-specific solution.
2. Integrations for notification, AI, miscelleneous cloud services
and online payment.
3. Public access for a SPA or an Application, since they are private
by default.
4. Changes to the AI chat bot, in order to accommodate special requests.
5. Hybrid cloud setup or complete on-premise deployment for an
Enterprise Client.
In case of end-to-end development of a solution,
customizations will be included right at the beginning.
An example of a unique product customization could be forms for
restricted tables.
Restricted tables for an in-built
datasource are those that can be used for designating one particular
form or
endpoint only. In addition, the admin can
disable direct access to the table through the admin console and bulk
import through a form or API.
Restricting data entry methods helps in ensuring reliable insights.
For instance, this can be useful for collecting feedback from end-users in A/B testing. It will prevent users from
uploading AI generated responses.
Another layer of security could be allowing only verified email addresses
to submit a form.
Email id is a unique key that can be listed in a drop down menu, pulled from
another report.
Using a system variable like a user's login id, an admin can make
sure that they do not make an entry on someone else's behalf.
Depending on the schema, an application can be designed to serve a
number of such scenarios with restricted tables.
Some other customizations could include enabling only a camera-click button for image upload in a form linked to a restricted table. It will prevent users from uploading realistic synthetic images. This collection can then be curated for better quality before data augmentation needed for training niche deep learning models.
Likewise, adding AI functionalities for image and video analysis, report
summarization, data pre-processing or
generating text for each entry in a report etc.