Baserow’s Dev Environment

The dev environment runs Baserow services with source code hot reloading enabled. It also runs the backend django server and web-frontend nuxt server in debug and development modes.

Getting Started

Baserow offers two development approaches. Choose based on your priorities:

Approach Guide
Docker Running with Docker
Local Running Locally

Which Should I Use?

Use Docker if you want:

  • Quick start - Only requires Docker and just, no language runtimes to install
  • Consistency - Identical environment across all machines and OSes
  • Isolation - Dependencies contained in images, won’t conflict with other projects
  • Security - Code runs in sandboxed containers

Use Local development if you want:

  • Speed - Faster startup, instant hot reload, no container overhead
  • Lower resources - No Docker daemon or container memory overhead
  • Better debugging - Direct IDE integration, native breakpoints, no remote debugging setup
  • Simpler tooling - Standard Python/Node workflows you already know

Both approaches use the same just commands and can be switched between freely.

Quick Start

  • Docker development: just dc-dev up -d - runs all services in Docker containers
  • Local development: just dev - runs services natively with Docker only for db/redis

Further Reading

Note: The older dev.sh script is deprecated. See dev.sh for documentation on the legacy script if needed.

Fixing git blame

A large formatting only commit was made to the repo when we converted to use the black auto-formatter on April, 12 2021. If you don’t want to see this commit in git blame, you can run the command below to get your local git to ignore that commit in blame for this repo:

$ git config blame.ignoreRevsFile .git-blame-ignore-revs