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.
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:
- Install with Docker: A step-by-step guide to install Baserow using docker.
- Install with Docker Compose: A step-by-step guide to install Baserow using Docker Compose.
- Install with Helm: A community maintained helm chart for installing Baserow on a K8S cluster easily.
- Install on AWS: An overview of your options to install Baserow on AWS with two specific guides for ECS.
- Install using Standalone images: A general overview on how to run the Baserow standalone service images with your own container orchestration software.
- Install on Cloudron: Instructions to manually install Baserow on Cloudron.
- Install on Heroku: A step-by-step guide to install Baserow using Heroku.
- Install on Render: A step-by-step guide to install Baserow using Render a Heroku alternative.
- Install on Digital Ocean Apps: Instructions on how to install on Digital Ocean Apps platform.
- Install on Railway: A step-by-step guide to install Baserow on Railway.
- Install on Ubuntu: Instructions on how to install Docker and use it to install Baserow on a fresh ubuntu install.
- Third party hosting providers: A list of hosting/deployment providers that allow to easily self-host Baserow.
- Install with Traefik: How to configure Baserow when using Traefik.
- Install with K8S: An example performant production ready K8S configuration for use as a starting point.
- Install behind Nginx: How to configure Baserow when using a Nginx reverse proxy.
- Install behind Apache: How to configure Baserow when using an Apache reverse proxy.
- DEPRECATED: Install on Ubuntu: A deprecated and now unsupported guide on how to manually install Baserow and its required services on a fresh Ubuntu install. Please use the guides above instead.
- Supported runtime dependencies and environments: Learn about the supported and recommended runtime dependencies.
- Monitoring Baserow: Learn how to monitor your Baserow server using open telemetry.
- Understanding Baserow Formulas: A tutorial explaining how to use the formula field in Baserow.
- Debugging Connection Issues: A tutorial explaining how to use the formula field in Baserow.
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.
- 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.
Everything related to contributing and developing for Baserow.
- Development environment: More detailed information on baserow's local development environment.
- Running the Dev Environment: A step-by-step guide to run Baserow 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.
- dev.sh: Further details on how to use Baserow's
./dev.sh
helper script. - 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.
Everything related to custom plugin development.
- Plugin basics: An introduction into Baserow plugins.
- Plugin boilerplate: Don't reinvent the wheel, use the boilerplate for quick plugin development.
- Create application: Want to create an application type? Learn how to do that here.
- Create database table view: Display table data like a calendar, Kanban board or however you like by creating a view type.
- Create database table view filter: Filter the rows of a view with custom conditions.
- Create database table field: You can store data in a custom format by creating a field type.
- Creata a field converter: Converters alter a field and convert the related data for specific field changes.
- External resources related to Baserow: A list of external third party resources.