Baserow

Open-source no-code platform to build databases, apps, automations, and AI agents — self-hosted or cloud, with full data ownership.

5.2Kstars
654forks
Custom / Unknown
Python

Baserow is a secure, open-source platform for building databases, internal applications, automations, and AI-powered workflows — all without writing code. Designed as a self-hostable alternative to Airtable, it combines the familiarity of a spreadsheet interface with the power of a relational database, backed by PostgreSQL and a headless REST API.

Trusted by over 150,000 users, Baserow delivers enterprise-grade security with GDPR, HIPAA, and SOC 2 Type II compliance out of the box. Teams can deploy on Docker, Helm, AWS, DigitalOcean, Heroku, Railway, Render, or Cloudron — retaining full control over their data and infrastructure, with no storage restrictions or vendor lock-in.

At its core, Baserow features an extensible field-type registry built on Django REST Framework, a custom ANTLR-powered formula language, real-time collaboration via Django Channels and Redis, and a visual no-code application builder for publishing internal tools to a custom domain. Its AI assistant, Kuma, allows teams to create databases, define fields, and build automations using natural language prompts.

The platform follows an open-core model: all non-premium and non-enterprise features are MIT-licensed for commercial and private use, while advanced enterprise features (SAML SSO, audit logs, advanced permissions) are available under a separate commercial license.

What You Get

  • Spreadsheet-Database Hybrid Views - Switch between grid, gallery, kanban, calendar, timeline, form, and survey views on the same underlying data, combining spreadsheet familiarity with relational structure.
  • Kuma AI Assistant - Generate databases, define field types, and configure automations using natural language prompts — enabling non-technical users to build structured data systems without manual setup.
  • No-Code Application Builder - Drag-and-drop interface for building and publishing full web applications (CRM, portals, dashboards) to a custom domain, with forms, tables, and data-bound components.
  • Visual Workflow Automations - Build multi-step workflows with triggers (webhooks, row events, schedules), conditional branches, loops, HTTP actions, and email notifications without writing code.
  • Custom Formula Language - A purpose-built ANTLR grammar formula system supporting mathematical expressions, string manipulation, date functions, lookups, and cross-field references — evaluated safely server-side.
  • Extensible Field-Type Registry - A plugin-based architecture where each field type (text, number, link-row, formula, file, collaborator, AI, etc.) is registered and fully configurable, enabling deep customization.
  • Real-Time Collaboration - Multiple users can edit tables simultaneously with changes propagated instantly via Django Channels and Redis WebSockets, with undo/redo tracked per-client.
  • Enterprise Compliance & Security - GDPR, HIPAA, and SOC 2 Type II compliance with audit logs, role-based permissions, SAML SSO (enterprise tier), and encryption at rest and in transit.
  • Headless REST API & OpenAPI Schema - Every table automatically exposes a documented REST API with schema.json, enabling integration with any external tool, custom frontend, or automation platform.
  • Self-Hosted Deployment Flexibility - Deploy via Docker single container, Docker Compose, Helm chart, or managed platforms (Heroku, Render, DigitalOcean, AWS, Cloudron, Railway) with no data restrictions.

Common Use Cases

  • Internal CRM for sales teams - A sales team builds a custom CRM with contact records, deal pipelines, and automated follow-up email workflows using Baserow’s application builder and HTTP webhook automations — without touching any code.
  • ESG and sustainability data tracking - A compliance team imports CSV data from multiple global sites into Baserow, uses AI-assisted field generation to structure metrics, and publishes a live dashboard for executive carbon reporting.
  • Project and task management - A product manager replaces shared Excel files with a collaborative Baserow database, adding kanban views for sprint planning, form-based intake, and automation triggers for deadline reminders.
  • Risk management and audit tracking - A compliance officer tracks incidents, policy statuses, and audit findings in Baserow with custom forms for report submission, automations for escalation alerts, and SOC 2-ready data residency.
  • Inventory and asset management - An operations team builds an inventory tracker with linked tables for suppliers, SKUs, and purchase orders, using gallery views for visual inspection and formula fields for stock level calculations.
  • Customer-facing portals - A SaaS company uses Baserow’s application builder to publish a self-service customer portal where clients submit support requests, view their data, and track status — all backed by a Baserow database.

Under The Hood

Architecture Baserow is structured as a modular monolith with clean separation between its core, contrib (database, automation, builder, dashboard, integrations), premium, and enterprise layers — each registered via Django’s AppConfig system and a central plugin registry. The backend follows a registry-pattern architecture where field types, view types, action types, and data sync types are all first-class extensible entities registered at startup. Frontend and backend are fully decoupled: a Nuxt 3 Vue application communicates with the Django backend exclusively over REST and WebSockets. The async task layer uses Celery with Redis as both the broker and result backend, handling background jobs like bulk operations, Airtable imports, and AI field generation. The plugin system supports injecting additional apps and registries at runtime, though sandbox isolation between plugins is not enforced at the process level.

Tech Stack The backend runs Python 3.14 on Django 5.2 with Django REST Framework, using PostgreSQL as the primary data store — including pgvector for AI embedding queries. Real-time collaboration is handled by Django Channels 4 with Daphne as the ASGI server, backed by Redis for pub/sub and cache. The formula engine is built on a custom ANTLR 4 grammar (BaserowFormula.g4), compiled separately and parsed both in Python and JavaScript for consistent server- and client-side evaluation. The frontend is a Nuxt 3 application with Vue 3, TypeScript, and a module-based architecture mirroring the backend’s extensible design. Caddy serves as the production reverse proxy, handling HTTPS termination, WebSocket upgrades, and static asset delivery. The toolchain uses uv for Python dependency management and ruff for linting and formatting, replacing the legacy autopep8/black/flake8 stack as of version 2.1.

Code Quality The codebase demonstrates comprehensive test coverage across more than 500 Python test files covering unit, integration, API, WebSocket, and performance scenarios, supplemented by over 150 JavaScript/TypeScript test specs for the frontend. Type safety is enforced throughout both layers — Python via mypy and TypeScript via strict tsconfig — and the recent migration to ruff enforces consistent formatting and linting with minimal suppression annotations. Error handling is explicit and structured, with a rich hierarchy of custom exceptions mapped to typed HTTP error responses via DRF. The action system provides a unified undo/redo mechanism at the database layer with full audit trails. CI pipelines run query analysis alongside UI automation tests, ensuring regressions in both data correctness and interface behavior are caught before merge.

What Makes It Unique Baserow’s most distinctive technical contribution is its extensible field-type registry: every field type (from simple text to AI-generated, collaborative lookup, or custom formula fields) is a pluggable class that defines its own serialization, filtering, sorting, aggregation, import/export, and migration behavior — making the data model itself an extension point rather than a fixed schema. The custom ANTLR formula language evaluates consistently on both server and client, enabling safe computed fields without round-trips. Data sync types allow external sources (iCal, Jira, custom APIs) to be ingested as live-updating Baserow tables through a structured sync interface rather than manual imports. Real-time collaboration is implemented directly over Django Channels with Redis pub/sub, avoiding a dedicated collaboration service, while per-client undo/redo is tracked at the action-registry level rather than as a simple history buffer.

Self-Hosting

Baserow uses a layered open-core licensing model. The base platform — covering all database, automation, application builder, and dashboard features — is released under the MIT Expat License, which permits unrestricted commercial and private use, modification, and redistribution. The premium tier adds features like advanced field types and priority views, available under a separate commercial license defined in the premium/LICENSE file. The enterprise tier, found under enterprise/, requires a valid Baserow Enterprise Edition subscription and is governed by the EE License — a proprietary agreement that restricts production use to paying subscribers. For most self-hosting teams, the MIT-licensed core is fully sufficient without any subscription.

Running Baserow yourself requires a reasonably capable server: a PostgreSQL database, Redis instance, and the backend and frontend containers. The all-in-one Docker image bundles everything (PostgreSQL, Redis, Caddy, Celery workers, and the web frontend) into a single container for simpler small deployments, while the Docker Compose setup separates services for production scalability. You are responsible for database backups, SSL certificate renewal (Caddy automates HTTPS via Let’s Encrypt), container health monitoring, and applying updates by pulling new images. Celery workers need to be scaled independently if automation throughput is high, and pgvector must be available in your PostgreSQL instance for AI embedding features.

Compared to Baserow’s managed cloud offering at baserow.io, self-hosting means you handle all operational concerns yourself: uptime, patch management, scaling, and disaster recovery. The managed cloud includes 24/7 infrastructure monitoring, automatic upgrades, managed backups, and SLA guarantees. Enterprise cloud customers also get SAML SSO, advanced workspace permissions, dedicated support, and guaranteed high availability — none of which are automatically available in a self-hosted setup unless you have the EE license and the infrastructure to support them. The Baserow team provides detailed installation documentation for Docker, Helm, AWS, DigitalOcean, Heroku, Railway, Render, and Cloudron, making the operational path well-documented even if the operational burden is your own.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack

No spam. Unsubscribe anytime.

Join 750+ subscribers
No spam. Unsubscribe anytime.

Search