Table of contents

Baserow is an open-source online database tool. Users can use this no-code platform to create a database without any technical experience. It lowers the barriers to app creation so that anyone who can work with a spreadsheet can also create a database. The interface looks a lot like a spreadsheet. Our goal is to provide a perfect and fast user experience while keeping it easy for developers to write plugins and maintain the codebase. The developer documentation contains several topics you might need as a developer.

Installation

We provide a hosted version of Baserow which you can sign up and start using immediately at https://baserow.io. Alternatively you can easily self-host Baserow by following one the guides below:

Baserow Tutorials

API Usage

Baserow provides various APIs detailed below:

  • REST API: An introduction to the REST API and information about API resources.
  • WebSocket API: An introduction to the WebSockets API which is used to broadcast real time updates.

Technical Overviews

  • Introduction: An introduction to some important technical concepts in Baserow.
  • Database plugin An introduction to the database plugin which is installed by default.
  • Formula Technical Guide: A more technical guide about formulas aimed at developers who want to understand and work with internals of Baserow formulas.
  • Undo Redo Technical Guide: How Baserow implements undo redo technically.
  • Permissions handling Guide: How Baserow implements permission checking technically.
  • AI assistant routing: Tool discovery, action memory, reconciliation, and completion-validation limits.
  • Copy and paste: How cell values move through the clipboard, why Baserow keeps the exact value in local storage, and how the long text field behaves across every copy/paste path.
  • Automation node and service type naming: How automation node types, the integration service types they wrap, their form components and their test fixtures are named on the backend and the frontend.

Development

Everything related to contributing and developing for Baserow.

  • Development environment: More detailed information on baserow’s local development environment.
  • Running the Dev Environment Locally: A step-by-step guide to run Baserow locally for development.
  • Running the Dev Environment with Docker: A step-by-step guide to run Baserow with Docker for development.
  • Directory structure: The structure of all the directories in the Baserow repository explained.
  • Tools: The tools (flake8, pytest, eslint, etc) and how to use them.
  • Code quality: More information about the code style, quality, choices we made, and how we enforce them.
  • Debugging: Debugging tools and how to use them.
  • Create a template: Create a template that can be previewed and installed by others.
  • Justfile reference: Complete reference for all just commands available for development.
  • dev.sh: (Deprecated) Legacy ./dev.sh helper script. Use just commands instead.
  • IntelliJ setup: How to configure Intellij to work well with Baserow for development purposes.
  • Feature flags: How Baserow uses basic feature flags for optionally enabling unfinished or unready features.
  • E2E Testing: How to run Baserow’s end-to-end tests and when to add your own.
  • Metrics and Logs: How to work with metrics and logs to aid with monitoring Baserow as a developer.
  • Backend Tests: A guide on how to run python tests for the backend.

Plugins

Everything related to custom plugin development.

Other