Top
Best
New

Posted by thingsilearned 11 hours ago

Charts built for Chat(dbtcharts.com)
217 points | 66 comments
mrtimo 4 hours ago|
Malloy is an alternative to dbt, they have a similar product called Malloyyo [1], and Publisher [3], you can also the chat with HN data demo they have [4].

DBTCharts says you can serve charts locally, but it seems they want you to use their hosting service in production. Whereas, Malloyyo / Publisher are free to use anywhere. If you like college football checkout how I visualize drive data in [2], made with Malloyyo.

[1] - https://github.com/malloydata/malloyyo [2] - https://mrtimo.github.io/cfb-games/games-2026.html?%24SEASON... [3] - https://github.com/malloydata/publisher [4] - https://community.credibledata.com/hackernews

nzoschke 10 hours ago||
This looks great.

"Unbundling BI" is absolutely where things are headed now that more people have agents, coding agents, agent computers to help with work.

I'm seeing this all up and down knowledge work tools. I've started treating email as a BI problem -- ETL it from Gmail and and create many different views into it and reports from it.

I just wrote up some thoughts on that here: https://housecat.com/blog/making-gmail-data-fast-for-humans-...

A natural followup is how to better visualize this data in chat. The DBT table component looks like it could help https://docs.dbtcharts.com/charts/tables/

nzoschke 9 hours ago||
Wow https://github.com/dbt-labs/dbt-charts has a great chat user / agent coding experience:

> Make charts of this with dbt Charts. Start with: uv tool install dbt-charts && dct skills intro

>

> build a dashboard of my hiring inboxes: list of candidate name / email / locale, application quality, response age

The one-shot dashboard is surprisingly good.

stackghost 9 hours ago|||
>This looks great.

>"Unbundling BI" is absolutely where things are headed now that more people have agents, coding agents, agent computers to help with work.

Agreed. Coupled with bento[0] for slide decks, I think this type of project is a very welcome development, helping us move away from walled gardens and proprietary software suites.

[0] https://github.com/nyblnet/bento

nzoschke 8 hours ago||
Thanks for sharing this too. It reminds me of GistDeck a super old project that turned a gist into slides. Infinitely better than powerpoint or GSlides.

https://github.com/nzoschke/gistdeck

pizzafeelsright 9 hours ago||
Why visualize data? Graphs and charts always felt like the "show your work" in math class. It is forced synesthesia.

The rocket either lands or doesn't, safely, as expected. Green and Red lights are abstracted data plots.

The context should be the focus.

"Rocket must land at less than 0.2/mps" and pump the data into that context filter, more - reduce velocity, less - green light.

IanCal 39 minutes ago|||
> Why visualize data?

Because your eyes are enormous bandwidth channels hooked right up to your brain. So high that we can take things like writing which is just a small part of your fov and a set of squiggles that roughly corresponds to sounds you’ve heard and effortlessly comprehend it.

> The rocket either lands or doesn't, safely, as expected.

Crash vs land is a terrible amount of data to have if you want to fix it for next time. Did it accelerate suddenly? Is there a lurch? Did all the accelerometers have a small jump at the same time? Visualising data in different ways can really help show patterns.

hobofan 2 hours ago||||
Not every visualized data point is tied to a binary decision.

e.g. when highlighting a quarterly revenue result, there is a big difference between missing the target by 1% or 50% (and of course the absolute number behind it is also important).

And on a larger scale, trajectory is also something that is easily visualized in graphs, and hard to boil down to a binary marker.

There certainly is a lot of "forced synesthesia", and more looking at charts than necessary out there, especially when decisions are then made more from the gut than based on the data one is claiming to base the decisions off, but a culture of binary-based decision making is just as bad of an idea.

thingsilearned 9 hours ago||||
I've worked in data for 15 years and I've never heard this argument. I love it :)!

Who knows, with AI this may be the future. Visualizations were created to help us understand data. Florence Nightingale published them "to affect thro' the Eyes what we fail to convey to the public through their word-proof ears."

Often a formula better represents a situation. But I'm not sure how much impact they'd have in spreading that understanding outside of a formula-minded audience.

pizzafeelsright 6 hours ago||
I worked deep in big data briefly. Billions is too big for humans so we got creative how we visualized and filtered.

AI slop has a "smell" meaning there's an abstracted data filter that results in rose or poop output. Shakespeare variable says the name doesn't matter.

cindyllm 6 hours ago||
[dead]
mollifier14 9 hours ago||||
Sure, machines don't need visualization (although it seems that images are a surprisingly good medium to get context into agents), but humans still do. Mathematicians have plotted functions for a long time now. While the pure truth lies in the definition of f(x), the visualization helps the mind to grasp what it actually is. Humans will run companies for the foreseeable future, and so we will need visualization for the foreseeable future
pizzafeelsright 6 hours ago|||
Humans steer the ship. The wind and sea do the work. How we harness is what is changing.
apinstein 5 hours ago|||
Actually I think they do. Visualizations are a form of compression and focus.

All of my ai-driven plans use a tool I built to rasterize all text based visualizations. And I make the model present the rendered version to a clean room agent for brief-back. They go in circles until the diagram is good. Then, I instruct planning tools to always look at both the text and rendered version of all diagrams. I have found it to be surprisingly powerful.

nzoschke 8 hours ago|||
Without guidance my agents tend to make me read CSVs.

Sure the data is correct, but it's obviously way easier for me to read it as a properly rendered table. Then you want to sort, group, aggregate the data. Visualize it many different ways if you will :)

pizzafeelsright 6 hours ago||
Table and check marks in Markdown.
IanCal 38 minutes ago||
That’s a data visualisation.
thingsilearned 11 hours ago||
Hi HN, I'm Dave the founder of Chartio (YC'10 now Atlassian Analytics), announcing today dbt Charts, an open source YAML dialect and tool for declaring and rendering dashboards.

When making dashboards with claude or other agents, a lot of free-form artifacts are created that makes it hard to audit and scale. dbt Charts is a simple YAML dialect that declares and renders a chart (think markdown but for dashboards). Along with dbt its Apache 2.0 and launched today.

We hope this language + AI help make the BI space more open with dashboards as concise auditable code. Would love any thoughts and feedback.

mceoin 9 hours ago|
Congrats on the launch Dave! I was wondering who was going to launch an attempt at industry standard here. Hope it gains widespread adoption.
thingsilearned 6 hours ago||
Thank you Eoin!
karakanb 3 hours ago||
Hi there, Burak here, creator of DaC and Bruin: https://github.com/bruin-data/dac

This is obviously a space we are very much interested in, so it is definitely nice to see approaches that attack the same problem. I haven't played with dbtcharts in depth yet but it looks very similar to DaC in principle, and also in the actual spec. I believe the industry definitely needs solutions like this to help get out of the legacy BI tools as Bİ is one of the biggest bottlenecks for AI adoption in large orgs.

Excited to see further competition in the space, nice launch!

rcarmo 1 hour ago||
Neat, but… I’ve built up skills for my agents to just generate SVG charts and embed them in the chat timelines. A library helps, sure, but you can get surprisingly good results that cover 80% of the timeline and bar chart visualizations without any libraries, and that goes for diagrams as well (mine generate .drawio XML)
bbkane 6 hours ago||
Interesting, but I'm not sure how it's different from Observable Framework ( https://observablehq.github.io/framework/ ) for dashboards as code. I like that one because it's Markdown and JS instead of a language defined in YAML + templates
jerdthenerd 5 hours ago||
The use case that immediately came to mind for me was to use dbt charts as a rendering method for an MCP App.

You don't really want to give a LLM client code execution environment like Observable Framework does. dbt charts appear to validate the entire yaml input including the SQL being sent to the data source.

So I'm getting: a data vis layer that can be dynamically defined and rendered via LLM/MCP client without the headache of sandboxing a JS Runtime environment.

kantselovich 3 hours ago||
I like the observable framework too - very flexible, you can nail very specific visualization details by dropping down to JS/html.

Maybe this is targeted to pure SQL folks that can get lost in UI details.

PS: one issue that I have with observable framework is authentication and authorization , it requires some system to be built on top of it to handle authn.

dgudkov 8 hours ago||
It's neat but pretends to be more innovative than it actually is. BI has already been decoupled from everything else. People use AI to generate Excel and Power BI reports. YAML/XML/JSON - that doesn't matter. AI can generate whatever you instruct it to do.

So yes, a nice and logical development of dbt, but hardly as innovative as the blog post wants to sound. Nevertheless, I think it's a good idea that will be popular in certain circles. Hiring a professional data designer is a good idea - data visualization is very easy to get wrong.

oconnore 7 hours ago||
I think I agree, but I'm not sure where Dave is claiming this is a paradigm shift in data visualization?

One of the key claims is actually that it's based on _old_ established visualization patterns from before BI tools were popular, and therefore results in consistently nice charts. The other key claim is just that it's simple and maintainable.

Sometimes tools & products can be useful as just well executed points in the known design space. You can already do all this with AI, but it's perhaps a little bit less nice and less maintainable.

[I work at dbt/Fivetran]

mollifier14 8 hours ago||
AI can definitely generate whatever you tell it to do, but what to do with that artifact afterwards? If you want it to be reusable it needs to be a well-defined structured protocol/language. What good is a YAML describing a chart if all I can do is to give it back to the agent and say "read this and create a chart from it", the result will be vastly different from the chart you got the first time.
dgudkov 6 hours ago||
> the result will be vastly different from the chart you got the first time.

AI can generate reusable artifacts including definitions of the data sources, why not? Most BI dashboards are just XML or JSON (or YAML) files and include definitions of data sources (directly or via semantic models). I struggle to see how dbtCharts is different. Yes, your YAML schema is clean and nice, but that's because you're in the early stages :) Once you go through feature bloat, your YAML format will become much more complex.

AI can generate an XML/JSON/YAML definition of a BI report according to a spec and link the data source in whatever form it should be referenced in the file. For instance, here is a skills file for defining data sources (semantic models) in AI-generated Power BI dashboards: https://github.com/microsoft/skills-for-fabric/blob/main/plu...

rgbrgb 7 hours ago||
very cool! i'd been thinking about this idea and found vega-lite to be an interesting take as well [0].

i'll compare and look at folding this into setoku for app generation [1]. right now apps are just html blobs your claude authors + a mechanism for populating them with live data. definitely hard to audit but very flexible for operators to claude together internal apps. anyway, the charts look decent but really depend on the model that's making them and don't really follow any sort of style guide (example: https://demo.setoku.com/apps/a7a1240ae0bc202c5eefa1cc). Your lib could bring some consistency and make global styling possible.

[0]: https://vega.github.io/vega-lite/

[1]: https://setoku.com

zahlman 5 hours ago||
Let's say (because it's true) I've been programming for close to 40 years but in completely different domains, such that the concept of "dashboard" means almost nothing to me. Could someone explain what this project actually is, or what "BI" is or why I would want it? I mean, I assume that "BI" is the thing that "PowerBI" implements, but other than that I couldn't tell you anything.
kantselovich 2 hours ago||
Say you have an inventory - list of cloud database instances from all engineering teams in the org.

Is this list growing over time or shrinking or remains the mostly the same?

If the list is growing, is it growing evenly across all teams , or some teams stand out? Can I narrow down to a few teams and compare?

What about overall health of the inventory - how many instances list security or billing optimization findings, how many instances are on the version that would be out of support soon and would need to be upgraded?

A dashboard can answer all those questions immediately and make issues visible, as opposed to a long list in a form of a spreadsheet.

dinkleberg 5 hours ago|||
I'm not going to pretend to be an expert at it, but BI tools let you interrogate your data. This can be used for endless use cases for basically any department in an organization. But for instance, if you're a sales leader you might have some questions about all of the sales and marketing data in your company to focus your team's efforts for the next quarter. When you figure out which questions are actually returning useful findings, you then can take a set of these and build a dashboard which lets you easily re-examine those particular questions and their results with always up-to-date (or up-to-date-ish) data and can easily share it with the team.
bryanrasmussen 5 hours ago||
well BI is I believe business intelligence, which is sort of like military intelligence, the set of practices and tools that have evolved around the need to present data to business people in such a way that they can make sensible decisions regarding their business.

on edit: So a dashboard is just one of those things were you see all the things you can do or interact with assembled together and from which you can navigate into any particular tool or view of data. Probably there would be meaningful data views on top. Like Number of Purchases versus people who started a purchase. And you could then drill down into the data that this chart represented to see how long purchases took, repeat customers, when people leave process or purchase etc. etc.

The dashboard is the entry point for how you will navigate your business data.

zahlman 5 hours ago||
So they're trying to simplify what, the addition of new views to the dashboard?
data_ders 3 hours ago||
(Anders here, on the dbt Charts team)

What drew me to the dbt project back in 2020 and what ultimately led me get a job at dbt Labs was this notion that when compared to software engineering teams, analytics teams had been vastly unserved by their tools.

In 2016 (and largely to this day), BI teams work in point-and-click interfaces without Software Development Lifecycle mainstays like source control, testing, and deployment environments.

There are BI engineers who do work like software engineers, but the gap b/w those who work like SWEs and those who don't is wide.

dbt Charts (like dbt before it did for data engineers) aims to empower data analysts to work with stakeholders in a more efficient and sustainable manner than was previously possible. The means to this end are: a succinct YAML DSL spec for defining charts, a powerful CLI that lets you validate, compile, and render the code into a dashboard spec the YAML.

Like data analysts being able to do PRs for changes to a dashboard is still rather unheard of especially if those PRs are in repos with other analytics code. Many BI vendors do ship some form of diffing and environment promotion, but virtually always these features fall short of what SWEs use every day.

hackandthink 2 hours ago|
You can specify Apache Superset Dashboards, Charts, ... using yaml, for example:

https://github.com/preset-io/headless-bi-blog-post-examples/...

But this is mostly just a dump of internal Superset data structures.

More comments...