Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -873,6 +873,7 @@ jobs:
- name: Comment coverage report on PR
if: github.event_name == 'pull_request'
uses: py-cov-action/python-coverage-comment-action@v3.38
continue-on-error: true
with:
GITHUB_TOKEN: ${{ github.token }}
MERGE_COVERAGE_FILES: false
Expand Down
43 changes: 25 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,20 @@
## Baserow is an open-source no-code platform and the best alternative to Airtable
## Baserow: build databases, automations, apps & agents with AI — no code

### 🚨 Repository Migration Notice

Baserow has moved from GitLab to GitHub. All issues have been successfully migrated,
but merged and closed merge requests (PRs) were not imported. You can still browse the
old repository and its history at: https://gitlab.com/baserow/baserow.

Please use this GitHub repository for all new issues, discussions, and contributions
going forward at: https://github.com/baserow/baserow.

It lets you easily build databases, applications, automations, and dashboards — all in
one secure, self-hostable environment. Empower your team to create powerful tools
without writing a single line of code.
Baserow is the secure, open-source platform for building databases, applications,
automations, and AI agents — all without code. Trusted by over 150,000 users, Baserow
delivers enterprise-grade security with GDPR, HIPAA, and SOC 2 Type II compliance, plus
cloud and self-hosted deployments for full data control. With a built-in AI Assistant
that lets you create databases and workflows using natural language, Baserow empowers
teams to structure data, automate processes, build internal tools, and create custom
dashboards. Fully extensible and API-first, Baserow integrates seamlessly with your
existing tools and performs at any scale.

* A spreadsheet database hybrid combining ease of use and powerful data organization.
* Create applications and portals, and publish them on your own domain.
* Automate repetitive workflows with automations (coming soon).
* Automate repetitive workflows with automations.
* Visualize your data with dashboards.
* Kuma, powerful AI-assistant to builds complete solutions.
* GDPR, HIPAA, and SOC 2 Type II compliant.
* Easily self-hosted with no storage restrictions or sign-up on https://baserow.io to
get started immediately.
* Best Alternative to Airtable.
Expand All @@ -30,20 +28,29 @@ without writing a single line of code.
[![Deploy to Heroku](https://www.herokucdn.com/deploy/button.svg)](https://www.heroku.com/deploy/?template=https://github.com/baserow/baserow/tree/master)

```bash
docker run -v baserow_data:/baserow/data -p 80:80 -p 443:443 baserow/baserow:1.35.3
docker run -v baserow_data:/baserow/data -p 80:80 -p 443:443 baserow/baserow:2.0.0
```

![Baserow database screenshot](docs/assets/screenshot.png "Baserow database screenshot")

![Baserow form screenshot](docs/assets/screenshot_form.png "Baserow form view screenshot")
![Baserow form screenshot](docs/assets/screenshot_kuma_form.png "Baserow form view and Kuma screenshot")

![Baserow kanban screenshot](docs/assets/screenshot_kanban.png "Baserow kanban view screenshot")

![Baserow application builder](docs/assets/screenshot_application_builder.png "Baserow application builder screenshot")

![Baserow application builder](docs/assets/screenshot_automations.png "Baserow automations screenshot")
(coming soon)

![Baserow application builder](docs/assets/screenshot_dashboard.png "Baserow dashboard screenshot")

## 🚨 Repository Migration Notice

Baserow has moved from GitLab to GitHub. All issues have been successfully migrated,
but merged and closed merge requests (PRs) were not imported. You can still browse the
old repository and its history at: https://gitlab.com/baserow/baserow.

Please use this GitHub repository for all new issues, discussions, and contributions
going forward at: https://github.com/baserow/baserow.

## Get Involved

Expand Down Expand Up @@ -109,7 +116,7 @@ Created by Baserow B.V. - bram@baserow.io.

Distributes under the MIT license. See `LICENSE` for more information.

Version: 1.35.3
Version: 2.0.0

The official repository can be found at https://github.com/baserow/baserow.

Expand Down
2 changes: 1 addition & 1 deletion backend/docker/docker-entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ set -euo pipefail
# ENVIRONMENT VARIABLES USED DIRECTLY BY THIS ENTRYPOINT
# ======================================================

export BASEROW_VERSION="1.35.3"
export BASEROW_VERSION="2.0.0"

# Used by docker-entrypoint.sh to start the dev server
# If not configured you'll receive this: CommandError: "0.0.0.0:" is not a valid port number or address:port pair.
Expand Down
2 changes: 1 addition & 1 deletion backend/src/baserow/config/settings/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -457,7 +457,7 @@
"name": "MIT",
"url": "https://github.com/baserow/baserow/blob/develop/LICENSE",
},
"VERSION": "1.35.3",
"VERSION": "2.0.0",
"SERVE_INCLUDE_SCHEMA": False,
"TAGS": [
{"name": "Settings"},
Expand Down
2 changes: 1 addition & 1 deletion backend/src/baserow/version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
VERSION = "1.35.3"
VERSION = "2.0.0"
50 changes: 50 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,55 @@
# Changelog

## Released 2.0.0

### New features
* [Builder] Element can be visually hidden on complex conditions [#2566](https://gitlab.com/baserow/baserow/-/issues/2566)
* [Database] Regenerate all table/view AI field values at once [#2586](https://gitlab.com/baserow/baserow/-/issues/2586)
* [Builder] Support advanced formulas. Formulas can now use functions and operators. [#3258](https://github.com/baserow/baserow/-/issues/3258)
* [Database] Multiple collaborators lookup fields filters [#3450](https://gitlab.com/baserow/baserow/-/issues/3450)
* [Database] Duration lookup field type filters [#3471](https://gitlab.com/baserow/baserow/-/issues/3471)
* [Database] Ability to find items anywhere in the workspace [#3732](https://gitlab.com/baserow/baserow/-/issues/3732)
* [Database] Add filters support for AI field [#3801](https://gitlab.com/baserow/baserow/-/issues/3801)
* [Database] Workspace search [#3826](https://github.com/baserow/baserow/-/issues/3826)
* [Database] Date dependencies in table [#3829](https://github.com/baserow/baserow/-/issues/3829)
* [Database] AI field auto-update [#4115](https://gitlab.com/baserow/baserow/-/issues/4115)
* [Builder] Added the AI agent workflow action. [#4116](https://github.com/baserow/baserow/-/issues/4116)
* [Database] Show primary field value in workspace search result for RowSearchType [#4181](https://gitlab.com/baserow/baserow/-/issues/4181)
* [Builder] Introduced the new 'Slack send message' workflow action. [#4237](https://github.com/baserow/baserow/-/issues/4237)
* [Core] Add TOTP 2fa support [#725](https://gitlab.com/baserow/baserow/-/issues/725)
* [Core] Added GitHub actions feature branch pipeline.
* [Core] Introduced Kuma, an AI-powered assistant to help you manage your workspace. [#3676](https://github.com/baserow/baserow/-/issues/3676)
* [Core] Introduced the ability to sync the knowledge base based on an exportable file.
* [Automation] Introducing automation builder; automate repetitive tasks and workflows.
* [Database] Show workspace settings modal if clicked on deactivated AI field.

### Bug fixes
* [Core] Only close the last opened modal when the esc key is pressed. [#3495](https://gitlab.com/baserow/baserow/-/issues/3495)
* [Database] Hide tooltip when value dynamically changes to null [#3501](https://gitlab.com/baserow/baserow/-/issues/3501)
* [Database] Log files that cannot be downloaaded during import [#3581](https://gitlab.com/baserow/baserow/-/issues/3581)
* [Core] Close the dropdown when using the tab key to move out from the collaborators field [#3717](https://gitlab.com/baserow/baserow/-/issues/3717)
* [Database] Long text boxes in forms don't maintain their expanded size. [#3801](https://gitlab.com/baserow/baserow/-/issues/3801)
* [Database] Serialize create/update rows actions execution to keep store consistent [#3850](https://gitlab.com/baserow/baserow/-/issues/3850)
* [Database] Allow formula field to reference AI field with choice output type [#3851](https://gitlab.com/baserow/baserow/-/issues/3851)
* [Database] Allow create new entry in linked table using pop-up window [#4104](https://gitlab.com/baserow/baserow/-/issues/4104)
* [Database] Fix CSV import throwing 'no fetchall attribute' error and respect primary field order [#4163](https://gitlab.com/baserow/baserow/-/issues/4163)
* [Builder] Fix scope issue with form input and repeat elements [#4185](https://gitlab.com/baserow/baserow/-/issues/4185)
* [Builder] Fix formula recursion error when the same data source is used twice in one formula of workflow action [#4195](https://gitlab.com/baserow/baserow/-/issues/4195)
* [Builder] Fix synchronised button loading state in tables [#4268](https://github.com/baserow/baserow/-/issues/4268)
* [Builder] Fix broken menu element
* [Builder] Fix collection element broken when they are in container
* [Database] Fix bug where the form validation does not work if iOS recognizes a phone number in the field name.
* [Builder] Fix workflow action configuration broken
* [Database] Added a tooltip to indicate that indexing is not available for this field type. [#3810](https://gitlab.com/baserow/baserow/-/issues/3810)
* [Core] Allow setting custom base URL for OpenAI. [#4108](https://github.com/baserow/baserow/-/issues/4108)

### Refactors
* [Builder] Added support for Advanced Formulas. [#3258](https://github.com/baserow/baserow/-/issues/3258)

### Breaking API changes
* [Builder] Data source now return content with human property names instead of technical ones [#4135](https://gitlab.com/baserow/baserow/-/issues/4135)


## Released 1.35.3

### New features
Expand Down
4 changes: 4 additions & 0 deletions changelog/releases.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
{
"releases": [
{
"name": "2.0.0",
"created_at": "2025-11-17"
},
{
"name": "1.35.3",
"created_at": "2025-10-08"
Expand Down
40 changes: 20 additions & 20 deletions deploy/all-in-one/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ tool gives you the powers of a developer without leaving your browser.
[Vue.js](https://vuejs.org/) and [PostgreSQL](https://www.postgresql.org/).

```bash
docker run -v baserow_data:/baserow/data -p 80:80 -p 443:443 baserow/baserow:1.35.3
docker run -v baserow_data:/baserow/data -p 80:80 -p 443:443 baserow/baserow:2.0.0
```

## Quick Reference
Expand Down Expand Up @@ -52,7 +52,7 @@ docker run \
-p 80:80 \
-p 443:443 \
--restart unless-stopped \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

* Change `BASEROW_PUBLIC_URL` to `https://YOUR_DOMAIN` or `http://YOUR_IP` to enable
Expand All @@ -75,7 +75,7 @@ docker run \

## Image Feature Overview

The `baserow/baserow:1.35.3` image by default runs all of Baserow's various services in
The `baserow/baserow:2.0.0` image by default runs all of Baserow's various services in
a single container for maximum ease of use.

> This image is designed for simple single server deployments or simple container
Expand Down Expand Up @@ -223,7 +223,7 @@ docker run \
-p 80:80 \
-p 443:443 \
--restart unless-stopped \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

### Behind a reverse proxy already handling ssl
Expand All @@ -236,7 +236,7 @@ docker run \
-v baserow_data:/baserow/data \
-p 80:80 \
--restart unless-stopped \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

### On a nonstandard HTTP port
Expand All @@ -249,7 +249,7 @@ docker run \
-v baserow_data:/baserow/data \
-p 3001:80 \
--restart unless-stopped \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

### With an external PostgresSQL server
Expand All @@ -268,7 +268,7 @@ docker run \
-p 80:80 \
-p 443:443 \
--restart unless-stopped \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

### With an external Redis server
Expand All @@ -287,7 +287,7 @@ docker run \
-p 80:80 \
-p 443:443 \
--restart unless-stopped \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

### With an external email server
Expand All @@ -307,7 +307,7 @@ docker run \
-p 80:80 \
-p 443:443 \
--restart unless-stopped \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

### With a Postgresql server running on the same host as the Baserow docker container
Expand Down Expand Up @@ -345,7 +345,7 @@ docker run \
-v baserow_data:/baserow/data \
-p 80:80 \
-p 443:443 \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

### Supply secrets using files
Expand All @@ -372,7 +372,7 @@ docker run \
-v baserow_data:/baserow/data \
-p 80:80 \
-p 443:443 \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

### Start just the embedded database
Expand All @@ -385,7 +385,7 @@ docker run -it \
--name baserow \
-p 5432:5432 \
-v baserow_data:/baserow/data \
baserow/baserow:1.35.3 \
baserow/baserow:2.0.0 \
start-only-db
# Now get the password from
docker exec -it baserow cat /baserow/data/.pgpass
Expand Down Expand Up @@ -417,7 +417,7 @@ docker run -it \
--rm \
--name baserow \
-v baserow_data:/baserow/data \
baserow/baserow:1.35.3 \
baserow/baserow:2.0.0 \
backend-cmd-with-db manage dbshell
```

Expand Down Expand Up @@ -540,19 +540,19 @@ the command below.

```bash
# First read the help message for this command
docker run -it --rm -v baserow_data:/baserow/data baserow/baserow:1.35.3 \
docker run -it --rm -v baserow_data:/baserow/data baserow/baserow:2.0.0 \
backend-cmd-with-db backup --help

# Stop Baserow instance
docker stop baserow

# The command below backs up Baserow to the backups folder in the baserow_data volume:
docker run -it --rm -v baserow_data:/baserow/data baserow/baserow:1.35.3 \
docker run -it --rm -v baserow_data:/baserow/data baserow/baserow:2.0.0 \
backend-cmd-with-db backup -f /baserow/data/backups/backup.tar.gz

# Or backup to a file on your host instead run something like:
docker run -it --rm -v baserow_data:/baserow/data -v $PWD:/baserow/host \
baserow/baserow:1.35.3 backend-cmd-with-db backup -f /baserow/host/backup.tar.gz
baserow/baserow:2.0.0 backend-cmd-with-db backup -f /baserow/host/backup.tar.gz
```

### Restore only Baserow's Postgres Database
Expand All @@ -568,13 +568,13 @@ docker stop baserow
docker run -it --rm \
-v old_baserow_data_volume_containing_the_backup_tar_gz:/baserow/old_data \
-v new_baserow_data_volume_to_restore_into:/baserow/data \
baserow/baserow:1.35.3 backend-cmd-with-db restore -f /baserow/old_data/backup.tar.gz
baserow/baserow:2.0.0 backend-cmd-with-db restore -f /baserow/old_data/backup.tar.gz

# Or to restore from a file on your host instead run something like:
docker run -it --rm \
-v baserow_data:/baserow/data -v \
$(pwd):/baserow/host \
baserow/baserow:1.35.3 backend-cmd-with-db restore -f /baserow/host/backup.tar.gz
baserow/baserow:2.0.0 backend-cmd-with-db restore -f /baserow/host/backup.tar.gz
```

## Running healthchecks on Baserow
Expand Down Expand Up @@ -625,7 +625,7 @@ docker run \
-p 80:80 \
-p 443:443 \
--restart unless-stopped \
baserow/baserow:1.35.3
baserow/baserow:2.0.0
```

Or you can just store it directly in the volume at `baserow_data/env` meaning it will be
Expand All @@ -634,7 +634,7 @@ loaded whenever you mount in this data volume.
### Building your own image from Baserow

```dockerfile
FROM baserow/baserow:1.35.3
FROM baserow/baserow:2.0.0

# Any .sh files found in /baserow/supervisor/env/ will be sourced and loaded at startup
# useful for storing your own environment variable overrides.
Expand Down
2 changes: 1 addition & 1 deletion deploy/all-in-one/supervisor/start.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ cat << EOF
██████╔╝██║ ██║███████║███████╗██║ ██║╚██████╔╝╚███╔███╔╝
╚═════╝ ╚═╝ ╚═╝╚══════╝╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚══╝╚══╝

Version 1.35.3
Version 2.0.0

=========================================================================================
EOF
Expand Down
2 changes: 1 addition & 1 deletion deploy/cloudron/CloudronManifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"contactEmail": "bram@baserow.io",
"icon": "file://logo.png",
"tags": ["no-code", "nocode", "database", "data", "collaborate", "airtable"],
"version": "1.35.3",
"version": "2.0.0",
"healthCheckPath": "/api/_health/",
"httpPort": 80,
"addons": {
Expand Down
2 changes: 1 addition & 1 deletion deploy/cloudron/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ARG FROM_IMAGE=baserow/baserow:1.35.3
ARG FROM_IMAGE=baserow/baserow:2.0.0
# This is pinned as version pinning is done by the CI setting FROM_IMAGE.
# hadolint ignore=DL3006
FROM $FROM_IMAGE AS image_base
Expand Down
2 changes: 1 addition & 1 deletion deploy/helm/baserow/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: baserow
description: The open platform to create scalable databases and applications—without coding.
type: application
version: 1.0.36
appVersion: "1.35.3"
appVersion: "2.0.0"
home: https://github.com/baserow/baserow/blob/develop/deploy/helm/baserow?ref_type=heads
icon: https://baserow.io/img/favicon_192.png
sources:
Expand Down
2 changes: 1 addition & 1 deletion deploy/helm/baserow/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ caddy:
| ------------------------------------------------------------------ | --------------------------------------------------------------------------------------- | ----------------------- |
| `global.baserow.imageRegistry` | Global Docker image registry | `baserow` |
| `global.baserow.imagePullSecrets` | Global Docker registry secret names as an array | `[]` |
| `global.baserow.image.tag` | Global Docker image tag | `1.35.3` |
| `global.baserow.image.tag` | Global Docker image tag | `2.0.0` |
| `global.baserow.serviceAccount.shared` | Set to true to share the service account between all application components. | `true` |
| `global.baserow.serviceAccount.create` | Set to true to create a service account to share between all application components. | `true` |
| `global.baserow.serviceAccount.name` | Configure a name for service account to share between all application components. | `baserow` |
Expand Down
2 changes: 1 addition & 1 deletion deploy/helm/baserow/charts/baserow-common/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ version: 1.0.36
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.35.3"
appVersion: "2.0.0"
Loading
Loading