Developing Internal Tools with Budibase
Budibase is an open-source low-code platform emphasizing automation and built-in database. Unlike Retool and Appsmith, Budibase has a built-in relational database (BudibaseDB), allowing tool creation without configuring external DBMS.
Key Features
- BudibaseDB — built-in DBMS based on CouchDB, suitable for simple data
- Automations — built-in automation engine (triggers + actions)
- Self-hosted — Docker, Kubernetes, DigitalOcean App Platform
- Multi-player — multiple users work simultaneously
- Support for external databases: PostgreSQL, MySQL, MongoDB, REST API
Installation
# Docker
docker run --rm --pull always \
-v budibase:/home/user \
-p 10000:10000 \
budibase/budibase:latest
PostgreSQL Connection
Budibase → Data → Add Source → PostgreSQL:
Connection string: postgresql://user:password@host:5432/dbname
After connecting, Budibase shows all tables and allows creating interfaces via "Auto-screens" button—automatically generates CRUD pages for selected table.
Automations
Built-in workflow engine:
Trigger: Row Created (in support_tickets table)
│
├─► Filter: priority == 'high'
│
├─► Query Rows (find manager from managers table)
│
├─► Send Email (via SMTP or SendGrid)
│ To: {{ manager.email }}
│ Subject: New urgent ticket #{{ ticket.id }}
│
└─► Update Row (ticket.assigned_to = manager.id)
// Code step in Automation
const ticket = inputs.ticket;
const priority = ticket.priority;
// Determine SLA based on priority
const slaHours = { critical: 1, high: 4, medium: 24, low: 72 };
const deadline = new Date();
deadline.setHours(deadline.getHours() + (slaHours[priority] || 72));
return {
sla_deadline: deadline.toISOString(),
sla_hours: slaHours[priority]
};
Example: Request Processing Portal
- Requests Table with auto-generated CRUD interface
- Submission Form for external users (public link)
- Automation: on new request → email manager + assign SLA
- Kanban Board for status tracking
Entire cycle—2–3 days.
Limitations
Budibase is less flexible in custom JavaScript than Retool. For complex data transformations and non-standard UI patterns, other tools are better suited.
Timeline
Simple CRUD app with automations — 1–3 days. Multi-page tool with external DB and roles — 1–2 weeks.







