# 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](https://baserow.io). Alternatively you can easily self-host Baserow by following one the guides below: * [Install with Docker](installation/install-with-docker.md): A step-by-step guide to install Baserow using docker. * [Install with Docker Compose](installation/install-with-docker-compose.md): A step-by-step guide to install Baserow using Docker Compose. * [Install with Helm](installation/install-with-helm.md): A community maintained helm chart for installing Baserow on a K8S cluster easily. * [Install on AWS](installation/install-on-aws.md): An overview of your options to install Baserow on AWS with two specific guides for ECS. * [Install using Standalone images](installation/install-using-standalone-images.md): A general overview on how to run the Baserow standalone service images with your own container orchestration software. * [Install on Cloudron](installation/install-on-cloudron.md): Instructions to manually install Baserow on Cloudron. * [Install on Heroku](installation/install-on-heroku.md): A step-by-step guide to install Baserow using Heroku. * [Install on Render](installation/install-on-render.md): A step-by-step guide to install Baserow using Render a Heroku alternative. * [Install on Digital Ocean Apps](installation/install-on-digital-ocean.md): Instructions on how to install on Digital Ocean Apps platform. * [Install on Railway](installation/install-on-railway.md): A step-by-step guide to install Baserow on Railway. * [Install on Ubuntu](installation/install-on-ubuntu.md): Instructions on how to install Docker and use it to install Baserow on a fresh ubuntu install. * [Third party hosting providers](installation/third-party-hosting-providers.md): A list of hosting/deployment providers that allow to easily self-host Baserow. * [Install with Traefik](installation/install-with-traefik.md): How to configure Baserow when using Traefik. * [Install with K8S](installation/install-with-k8s.md): An example performant production ready K8S configuration for use as a starting point. * [Install behind Nginx](installation/install-behind-nginx.md): How to configure Baserow when using a Nginx reverse proxy. * [Install behind Apache](installation/install-behind-apache.md): How to configure Baserow when using an Apache reverse proxy. * [DEPRECATED: Install on Ubuntu](installation/old-install-on-ubuntu.md): 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](installation/supported.md): Learn about the supported and recommended runtime dependencies. * [Monitoring Baserow](installation/monitoring.md): Learn how to monitor your Baserow server using open telemetry. ## Baserow Tutorials * [Understanding Baserow Formulas](tutorials/understanding-baserow-formulas.md): A tutorial explaining how to use the formula field in Baserow. * [Debugging Connection Issues](tutorials/debugging-connection-issues.md): A guide to help you troubleshoot and resolve common connection issues in Baserow. ## API Usage Baserow provides various APIs detailed below: * [REST API](apis/rest-api.md): An introduction to the REST API and information about API resources. * [WebSocket API](apis/web-socket-api.md): An introduction to the WebSockets API which is used to broadcast real time updates. ## Technical Overviews * [Introduction](technical/introduction.md): An introduction to some important technical concepts in Baserow. * [Database plugin](technical/database-plugin.md) An introduction to the database plugin which is installed by default. * [Formula Technical Guide](technical/formula-technical-guide.md): A more technical guide about formulas aimed at developers who want to understand and work with internals of Baserow formulas. * [Undo Redo Technical Guide](technical/undo-redo-guide.md): How Baserow implements undo redo technically. * [Permissions handling Guide](technical/permissions-guide.md): How Baserow implements permission checking technically. ## Development Everything related to contributing and developing for Baserow. * [Development environment](./development/development-environment.md): More detailed information on baserow's local development environment. * [Running the Dev Environment](development/running-the-dev-environment.md): A step-by-step guide to run Baserow for development. * [Directory structure](./development/directory-structure.md): The structure of all the directories in the Baserow repository explained. * [Tools](./development/tools.md): The tools (flake8, pytest, eslint, etc) and how to use them. * [Code quality](./development/code-quality.md): More information about the code style, quality, choices we made, and how we enforce them. * [Debugging](./development/debugging.md): Debugging tools and how to use them. * [Create a template](./development/create-a-template.md): Create a template that can be previewed and installed by others. * [dev.sh](./development/dev_sh.md): Further details on how to use Baserow's `./dev.sh` helper script. * [IntelliJ setup](./development/intellij-setup.md): How to configure Intellij to work well with Baserow for development purposes. * [Feature flags](./development/feature-flags.md): How Baserow uses basic feature flags for optionally enabling unfinished or unready features. * [E2E Testing](./development/e2e-testing.md): How to run Baserow's end-to-end tests and when to add your own. * [Metrics and Logs](./development/metrics-and-logs.md): How to work with metrics and logs to aid with monitoring Baserow as a developer. * [Backend Tests](development/running-tests.md): A guide on how to run python tests for the backend. ## Plugins Everything related to custom plugin development. * [Plugin basics](./plugins/introduction.md): An introduction into Baserow plugins. * [Plugin boilerplate](./plugins/boilerplate.md): Don't reinvent the wheel, use the boilerplate for quick plugin development. * [Create application](./plugins/application-type.md): Want to create an application type? Learn how to do that here. * [Create database table view](./plugins/view-type.md): Display table data like a calendar, Kanban board or however you like by creating a view type. * [Create database table view filter](./plugins/view-filter-type.md): Filter the rows of a view with custom conditions. * [Create database table field](./plugins/field-type.md): You can store data in a custom format by creating a field type. * [Creata a field converter](./plugins/field-converter.md): Converters alter a field and convert the related data for specific field changes. ## Other * [External resources related to Baserow](./other/external-resources.md): A list of external third party resources.