Categories
Featured-Post-Software-EN Software Engineering (EN)

Creating Software with ToolJet: A Complete Tutorial, Self-Hosting, Strengths & Real Limitations

Auteur n°16 – Martin

By Martin Moraz
Views: 14

Summary – Facing the need for agility and cost control, CIOs must rapidly deploy internal tools without sacrificing flexibility or data sovereignty. ToolJet, a 100% open-source, low-code framework, offers a modular visual editor to prototype interfaces and operational workflows in SaaS or self-hosted setups with Docker/PostgreSQL, free from vendor lock-in. Solution: leverage ToolJet to accelerate time-to-market while preserving technical governance, and reserve a custom back end for intensive processing and high-volume workloads.

In a landscape where operational efficiency and technological agility are strategic priorities, many IT departments and executive management teams seek to rapidly develop internal tools without sacrificing flexibility or cost control. ToolJet, a 100% open-source, low-code/no-code framework, meets this need by offering a modular environment for creating dashboards, CRUD interfaces, back offices, or operational workflows.

This guide outlines the fundamentals of ToolJet, its deployment in the cloud and self-hosting, the step-by-step process of building an application, and its main strengths and real limitations. The objective: to help identify the scenarios where ToolJet excels and those where custom development remains necessary.

Understanding ToolJet

ToolJet relies on a modular, open-source architecture to facilitate the creation of internal tools without coding every detail. Its ecosystem features connectors, prebuilt widgets, and customizable workflows for rapid implementation.

Origin and Concept

ToolJet emerged from observing the barriers imposed by traditional development and rigid proprietary solutions. Discover our guide on custom development vs off-the-shelf solutions for more details.

The low-code/no-code approach aims to empower business teams to build prototypes while still allowing the injection of JavaScript scripts for specialized requirements. This dual strategy ensures a balance between implementation speed and future extensibility.

The open-source core eliminates vendor lock-in: the community can contribute, audit the code, and deploy the framework wherever it makes sense, whether on private servers or in a public cloud.

Main Features

ToolJet’s visual editor includes widgets for creating dynamic dashboards, edit forms, calendar views, or maps. Each widget has configurable properties and can be bound to actions.

Data management relies on ready-to-use connectors for PostgreSQL, MySQL, and MongoDB databases, as well as REST or GraphQL APIs. Learn more about hexagonal architecture and microservices.

A workflow engine handles logic: triggering actions on click, sending emails, scheduled triggers, or data-based conditions. This low-code layer enables the management of business processes without leaving the interface.

Common Use Cases

Organizations adopt ToolJet to modernize business reporting, manage internal approval processes, or centralize operational monitoring data. Discover the ABC analysis to transform your data into clear operational priorities.

In the quality department of a logistics company, the IT team set up a transport incident tracking dashboard in under a week. This reduced anomaly reporting time by 30% and accelerated decision-making by managers.

Deployment in the Cloud or Self-Hosting

ToolJet can be consumed as a managed SaaS or deployed in-house via Docker and PostgreSQL. The choice depends on each organization’s security, scalability requirements, and data policies.

Deployment via the ToolJet Cloud Platform

The SaaS version provides one-click configuration with no infrastructure constraints. Compare cloud vs on-premise to determine the best option.

Connections to databases and external APIs are configured through secure environment variables. The platform supports single sign-on (SSO) and TLS encryption to ensure the confidentiality of data exchanges.

This option is suitable when the organization can entrust its data to a third party without stringent regulatory constraints or sovereign hosting requirements.

Self-Hosting with Docker and PostgreSQL

For environments that must comply with data localization or regulatory rules, self-hosting becomes the only alternative. ToolJet provides a Docker image and an SQL schema for PostgreSQL, deployable on any Kubernetes infrastructure, VM, or bare-metal.

The container includes the API, web interface, and an asynchronous worker service. You simply set the environment variables (database URL, API keys) and expose the appropriate ports. Docker volumes ensure persistence of configurations and assets.

This setup offers full control over the application and data lifecycle, at the cost of increased responsibility for security and updates.

Security and Maintenance

In self-hosted mode, applying security patches is the internal team’s responsibility. A dedicated CI/CD process can automate fetching new Docker releases and testing them in staging first.

Implementing TLS certificates, firewalls, and network policies in Kubernetes (Network Policies) or Docker Compose (host firewall) is essential to isolate ToolJet and limit unauthorized access, following a four-layer security architecture.

Performance and log monitoring can be conducted with third-party tools (Grafana, Prometheus, ELK). These practices ensure stability, availability, and traceability of user actions.

Edana: strategic digital partner in Switzerland

We support companies and organizations in their digital transformation

Building an Application with ToolJet

The process of building an internal application involves defining data sources, assembling the interface, and configuring actions. Each step is performed through the visual editor without leaving the ToolJet environment.

Defining Data Sources and Data Model

The first step is to declare connections: relational database, REST API, or cloud service. Access parameters, encrypted in the database, ensure credential confidentiality.

Once the connection is established, ToolJet automatically generates a list of tables or endpoints: you simply select the fields and add filters or joins via a graphical editor or raw SQL.

In an internal project for an industrial SME, the teams set up a connection to a production tracking database in two days. The visual mapping of columns accelerated prototyping, demonstrating the effectiveness of the low-code layer in merging multiple sources.

Interface Construction

The editor offers a catalog of widgets: table, chart, form, button, map, etc. Each element is placed on the canvas via drag-and-drop.

Widget properties (title, columns, styles, display conditions) are configured via a side panel. JavaScript expressions can be integrated for advanced validation logic or dynamic calculations.

CSS style customization is available to incorporate the internal design system without touching the framework’s source code. This flexibility is ideal for aligning the interface with the company’s visual identity.

Setting Up Actions and Events

Each widget can trigger a series of actions: SQL queries, API calls, email sending, or Slack notifications. Events (click, page load, value change) are configured in just a few clicks.

Workflows are organized into conditional sequences: for example, validate a form, write to the database, then launch an external job. This orchestration ensures end-to-end automation without additional back-end development.

The versioning table preserves a history of changes and enables reverting to a previous state in case of a configuration error. This safeguard reduces the risk of service disruption for critical tools.

Real Strengths and Limitations of ToolJet

ToolJet excels at rapid prototyping and managing simple workflows while remaining free and auditable. However, it reaches its limits when facing complex business requirements or very large data volumes.

Key Benefits of the Framework

Being free and open-source facilitates adoption without licensing costs or vendor lock-in. Regular community updates bring new features and quickly address vulnerabilities.

The low-code design accelerates time-to-market and frees IT teams from repetitive coding tasks. Business teams can prototype and validate their needs before production deployment.

The modularity of connectors and widgets allows for a coherent, scalable ecosystem that adapts to changes in internal processes.

Constraints and Use Cases to Avoid

When dealing with business processes requiring heavy computation or massive data volumes (millions of records), the interface can become slow and hard to maintain. ToolJet is not designed to replace an analytical engine or a heavyweight ETL tool.

JavaScript scripts in ToolJet are a limited extension: beyond a certain complexity, they can be difficult to test and debug in the editor.

Coexistence with Custom Development

A hybrid scenario combines ToolJet for management interfaces and a custom back-end for heavy logic. The custom API-first architecture handles complex calculations and returns ready-to-consume data.

This decoupled architecture ensures the best fit according to criticality: rapid prototyping with ToolJet and robustness and performance for intensive processing via a dedicated service.

Edana’s strategy is always to assess risks and define clear boundaries for each component, avoiding extending ToolJet’s use beyond its optimal capacity.

Accelerate Your Digital Transformation with the Right Tools

ToolJet enables the rapid construction of open-source internal applications, from data source definition to workflow orchestration, while offering self-hosting to meet security requirements. Its strengths lie in its modularity, low-code model, and lack of lock-in, but transitioning to custom development is advisable when data volumes or business complexity exceed its capabilities.

IT teams and business units can thus balance deployment speed with technical robustness, relying on adjusted project governance. Our Edana experts are at your disposal to assess your needs, guide you in choosing the deployment model, and define the optimal boundary between ToolJet and custom development.

Discuss your challenges with an Edana expert

By Martin

Enterprise Architect

PUBLISHED BY

Martin Moraz

Avatar de David Mendes

Martin is a senior enterprise architect. He designs robust and scalable technology architectures for your business software, SaaS products, mobile applications, websites, and digital ecosystems. With expertise in IT strategy and system integration, he ensures technical coherence aligned with your business goals.

FAQ

Frequently Asked Questions about ToolJet

When should you choose self-hosting ToolJet instead of the SaaS version?

Self-hosting is recommended if your internal policies or regulatory requirements mandate full control over your data and infrastructure. Using Docker and PostgreSQL, you deploy ToolJet in your own environment and manage security, scalability, and updates. Conversely, if you prefer a fast setup without handling infrastructure, the SaaS version offers provisioning in just a few clicks, ideal for less constrained projects.

What are ToolJet's performance limitations with large volumes of data?

ToolJet handles moderately sized datasets (hundreds of thousands of records) very well. Above that, table rendering or navigation may become sluggish if indexes aren’t optimized or server-side pagination isn’t used. For extremely large volumes, it’s best to offload aggregation or filtering to a dedicated compute service and then present pre-aggregated views in ToolJet.

How do you ensure security and maintenance when self-hosting?

In a self-hosted environment, your IT team is responsible for security patches and updates. We recommend setting up a CI/CD pipeline to automate the deployment of new Docker images, validate them in staging, and handle PostgreSQL backups. Don’t forget to configure TLS certificates, implement firewalls (network policies or host-based), and establish monitoring via Grafana and Prometheus.

Which connectors are natively available in ToolJet?

ToolJet natively offers connectors for PostgreSQL, MySQL, MongoDB, as well as any REST or GraphQL API. These modules simplify connecting to your data sources: environment variable configuration, selecting tables or endpoints through the UI, and automatic schema detection. You can also develop and integrate custom connectors if you’re using specific databases or services.

How do you integrate JavaScript scripts for advanced requirements?

To address specific business needs, ToolJet allows injecting JavaScript scripts into widget properties and actions. You can write validation expressions, dynamic calculations, or data transformations. Be sure to keep code complexity in check, test scripts in a secure environment, and document each change to facilitate maintenance.

What are the risks of vendor lock-in with ToolJet?

Thanks to its fully open-source model, ToolJet doesn’t create vendor lock-in. You can clone the source code, audit components, and deploy the framework wherever you like. Updates are available via the community or official GitHub releases. If needed, you can always fork the project or direct its development in-house.

How does ToolJet integrate into a custom hybrid architecture?

In a hybrid scenario, ToolJet handles the interfaces and lightweight workflows, while a custom back-end manages intensive computations or complex logic. The custom API returns ready-to-consume data, ensuring performance and modularity. This separation of responsibilities optimizes time-to-market and overall system robustness while preserving flexibility for future evolution.

What common mistakes should be avoided when setting up a workflow on ToolJet?

Common pitfalls include not versioning configurations, omitting server-side pagination for tables, underestimating error handling in workflows, or exposing environment variables without encryption. To avoid these issues, establish formal governance (CI/CD, staging tests), document your workflows, and validate scalability before moving to production.

CONTACT US

They trust us for their digital transformation

Let’s talk about you

Describe your project to us, and one of our experts will get back to you.

SUBSCRIBE

Don’t miss our strategists’ advice

Get our insights, the latest digital strategies and best practices in digital transformation, innovation, technology and cybersecurity.

Let’s turn your challenges into opportunities

Based in Geneva, Edana designs tailor-made digital solutions for companies and organizations seeking greater competitiveness.

We combine strategy, consulting, and technological excellence to transform your business processes, customer experience, and performance.

Let’s discuss your strategic challenges.

022 596 73 70

Agence Digitale Edana sur LinkedInAgence Digitale Edana sur InstagramAgence Digitale Edana sur Facebook