Local development

After you've created your project, you can iterate on it, test it locally, and deploy it to Tinybird Cloud. Tinybird makes it easy to iterate, test, and deploy your data project like any other software project.

Start Tinybird Local

To start Tinybird Local, run the following command:

tb local start

We will start to log the status of the container and the services. Do not proceed until you see the Tinybird Local is ready! message.

» Starting Tinybird Local...
* Tinybird Local container status: starting
* memory 0.04/8.57 GB cpu 0.1% arch=arm64 img=amd64 emulated=true
* Tinybird Local container status: healthy
* memory 4.07/8.57 GB cpu 0.9% arch=arm64 img=amd64 emulated=true
» Checking services...
✓ Tinybird Local container
✓ Clickhouse
✓ Redis
✓ Server
✓ Events
✓ Tinybird Local authentication
✓ Tinybird Local is ready!

Once the process finishes, it will show logs for every service running in your local environment. If you want to run Tinybird Local in the background, pass --daemon flag to the command.

[AUTH] GET /tokens 200 132.8ms
[API] GET /v0/sql 200 67.1ms
[EVENTS] POST /v0/events 200 112.3ms
[HEALTH] memory 3.86/8.57 GB cpu 1.0% arch=arm64 img=amd64 emulated=true

If something goes wrong, you will see an error message in the console.

[EVENTS] POST /v0/events 500 112.3ms
[HEALTH] memory 47.1% 4.13/8.78 GB arch=arm64 img=linux/amd64 ERROR
Tinybird Local is unhealthy. Run `tb local restart´ and try again.

If you stop the process with Ctrl+C, you will stop Tinybird Local.

» Stopping Tinybird Local...
✓ Tinybird Local stopped

Tinybird Local services

Tinybird Local automatically creates and manages the following services:

  • ClickHouse: OLAP database to store your data and run queries.
  • Redis: key-value store to persist user and workspace metadata.
  • Kafka consumer: Kafka consumer to ingest data into data sources connected to a Kafka topic.
  • Events API server: Ingest data via HTTP requests into data sources.
  • Tinybird server: main APIs of Tinybird, like authentication, endpoints, etc.
  • Project server: your data project is exposed as a REST API, so it can be accessed by Tinybird UI.
  • MCP server: Exposes your workspace as tools for AI agents to use.

Make changes to your project

Now you can open a new terminal and start working with your project, by running tb dev. This command will watch for changes in your project and rebuild it automatically.

» Building project...
✓ datasources/user_actions.datasource created
✓ endpoints/user_actions_line_chart.pipe created
✓ Rebuild completed in 0.2s

In the logs tab you will see if the request is successful or not.

[API] POST /v1/build 200 67.1ms

Using Tinybird UI

You can also use Tinybird UI to edit your project. Run the following command to open the Tinybird UI pointing to your local environment.

tb open

tb dev exposes your project as API, so you can edit it directly in the browser and see changes applied automatically.

Updated