Skip to main content

Rill 0.16 – SQL + YAML = Dashboard

Β· 3 min read

⚑ Rill Developer is a tool that makes it effortless to transform your datasets with SQL and create powerful, opinionated dashboards. These are our release notes for our 0.16 release, still in Tech Preview.

To try out Rill Developer, check out these instructions and let us know over on Discord if you encounter any problems or have ideas about how to improve Rill Developer!

In this release, when you write your queries and define your metrics, something finally happens on your file system; we create sql and yaml files for you, ready to be committed to git. We’ve always had a half-implemented version of this, but in 0.16, we’ve retooled Rill Developer to make the resulting project files the entire source of truth in the application.

  • when you add a data source, it creates a source definition in YAML;
  • when you add a model, it creates a SQL file that contains the query;
  • when you define metrics, it creates a YAML configuration.

When put together, the Rill runtime will β€œre-hydrate” a project, figuring out the dependencies, pulling down data, & validating your model queries and metrics configurations. The result is a set of functioning exploratory dashboards.

This may sound like a small thing, but it’s one our biggest convictions for Rill – your BI layer should be developed as code, not a point-and-click interface. A BI layer that can be checked into git can be tested, shared, reasoned about, and worked on with the same tools people use for writing software and building pipelines. It means that in the future, your CI can create dashboards for you. It means that Rill Developer is much, much more easily embedded in other tools. And it means that in the future, you’ll be able to deploy future Rill dashboards with confidence. This small thing is a seed that contains a multitude of possibilities; we hope y’all like it.

After you install Rill, give it a try with our shared example:

git clone
cd rill-developer-example
rill start

We do want to note that these changes were the result of a major backend refactor. If you encounter rough edges, please let us know on Discord!

Here are the main changes in 0.16:

  • **Materialize all of your dashboards as SQL and YAML β€” ** When you create sources, models, and metrics versions we create code-representations on your behalf on the file system. You can see these files in your source, models and dashboards folders in your project. To learn more about what the properties mean and what values they can have, visit our Rill project file reference documentation. We aren't sure if this is the exact form factor our files will land on, but we think that a combination of YAML and SQL is a great way to start define the dashboard journey with declarative Rill project files.

  • **Re-hydrate an existing project β€” ** If someone shares a Rill project with you, you can easily pull it down from a git repository and have it fetch the data locally to recrete the transformation and dashboard experience. Simply cd into the project directory, run rill start, and the project will pull down the sources, run the models and create the dashboard on your behalf before starting the application. If you change Rill project files in a third party tool after you have cloned or created a proejct, you will need to rerun rill start to kick off the reconciliation of your files to see the updates.