{"slug": "vega-lite", "name": "Vega-Lite", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 7, "commenters": 10, "warners": 0, "score": 7.246, "rising": 1.69, "first": "2026-04-20", "latest": "2026-09-15", "why": "get familiar with grammar of graphics [0] libraries like Vega-Lite", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 6, "neutral": 3, "compare": 2, "warn": 0}, "spark": [0, 0, 0, 0, 0, 0, 3, 0, 1, 1, 1, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "get familiar with grammar of graphics [0] libraries like Vega-Lite", "kind": "", "icon": true, "domain": null, "github_repo": "github.com/vega/vega-lite", "official_url": "https://vega.github.io/vega-lite/", "pricing": "", "aliases": ["Vega-Lite", "vega-lite"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 795306064, "item_id": 49706629, "url": "https://news.ycombinator.com/item?id=49706629", "by": "rgbrgb", "date": "2026-09-15", "version": null, "stance": "recommend", "quote": "found vega-lite to be an interesting take as well", "excerpt": "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 depe", "context": "", "use_case": "", "switched_from": "", "story": "Charts built for Chat"}, {"id": 789377408, "item_id": 49336088, "url": "https://news.ycombinator.com/item?id=49336088", "by": "jtbaker", "date": "2026-08-17", "version": null, "stance": "recommend", "quote": "I'd suggest looking at https://vega.github.io/vega-lite/", "excerpt": "For a schema-first (vs. code first) approach (which I think would be a sweet spot for agent driven dashboarding), I'd suggest looking at https://vega.github.io/vega-lite/ or https://vega.github.io/vega/. A little higher level than full D3 but gives you a little higher level approach.", "context": "", "use_case": "Schema-first dashboard visualization", "switched_from": "", "story": "A Preview of DuckDB v2.0"}, {"id": 781392000, "item_id": 48837000, "url": "https://news.ycombinator.com/item?id=48837000", "by": "NicuCalcea", "date": "2026-07-08", "version": null, "stance": "recommend", "quote": "get familiar with grammar of graphics [0] libraries like Vega-Lite", "excerpt": "That's fair, I generally make charts for publication, so I spend much more time and effort on the details. But I can understand this being useful for quick exploration for some people. Generally speaking, I suggest anyone interested in learning to make charts get familiar with grammar of graphics [0] libraries like Vega-Lite, Observable Plot, ggplot2, Altair. There is a bit of a learning curve if you're used to selec", "context": "", "use_case": "Chart creation", "switched_from": "", "story": "Show HN: Microsoft releases Flint, a visualization language for AI agents"}, {"id": 768991712, "item_id": 48061982, "url": "https://news.ycombinator.com/item?id=48061982", "by": "tosh", "date": "2026-05-08", "version": null, "stance": "recommend", "quote": "vega-lite supports rendering of GeoJSON via 'geoshape'", "excerpt": "vega-lite supports rendering of GeoJSON via 'geoshape' https://vega.github.io/vega-lite/docs/geoshape.html", "context": "", "use_case": "GeoJSON map rendering", "switched_from": "", "story": "GeoJSON"}, {"id": 767789441, "item_id": 47986840, "url": "https://news.ycombinator.com/item?id=47986840", "by": "hasyimibhar", "date": "2026-05-02", "version": null, "stance": "recommend", "quote": "They are building the standard grammar (Vega-Lite)", "excerpt": "I mean that's what the Vega team is doing no? They are building the standard grammar (Vega-Lite), along with an implementation (Vega). And they are already quite established with rich ecosystem, and supports a ton of components[0]. The only thing missing is that it expects a CSV or inline data source. But it's probably not too hard to build an extension that connects to a data warehouse with an SQL query. [0] https:/", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: DAC \u2013 open-source dashboard as code tool for agents and humans"}]}], "caveats": [], "who": [], "tags": [], "use_cases": ["charting", "chart building toolkit", "charting spec", "schema-first dashboard visualization", "chart creation", "geojson map rendering"], "compared": [{"slug": "dbt-charts", "name": "dbt Charts", "co": 5, "switched_from": 0, "switched_to": 0}, {"slug": "ggplot2", "name": "ggplot2", "co": 3, "switched_from": 0, "switched_to": 0}, {"slug": "ggsql", "name": "ggsql", "co": 3, "switched_from": 0, "switched_to": 0}, {"slug": "vega", "name": "Vega", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "claude", "name": "Claude", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "flint", "name": "Flint", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [{"id": 795297376, "item_id": 49706086, "url": "https://news.ycombinator.com/item?id=49706086", "by": "mollifier14", "date": "2026-09-15", "version": null, "stance": "recommend", "quote": "vega-lite is vast tool set to build charts with static data.", "excerpt": "We actually use vega-lite under the hood. vega-lite is vast tool set to build charts with static data. dbt Charts adds a whole layer on top of that, which is dashboards with repeatable SQL queries. Also dbt Charts comes with a lot of opinionated chart style ideas. So vega-lite is a toolbox for chart assembly, and we use that toolbox to build dashboards. On the standardized charting language, that would be the dream. ", "context": "", "use_case": "chart rendering under dbt Charts", "switched_from": "", "story": "Charts built for Chat"}], "threads": [{"url": "https://news.ycombinator.com/item?id=49704246", "title": "Charts built for Chat", "mentions": 6}, {"url": "https://news.ycombinator.com/item?id=47949066", "title": "Show HN: DAC \u2013 open-source dashboard as code tool for agents and humans", "mentions": 3}, {"url": "https://news.ycombinator.com/item?id=47833558", "title": "ggsql: A Grammar of Graphics for SQL", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=49330781", "title": "A Preview of DuckDB v2.0", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49130604", "title": "Flint: A Visualization Language for the AI Era", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48834924", "title": "Show HN: Microsoft releases Flint, a visualization language for AI agents", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {}, "2026-01": {}, "2026-02": {}, "2026-03": {}, "2026-04": {"neutral": 2}, "2026-05": {"recommend": 3}, "2026-06": {}, "2026-07": {"recommend": 1, "neutral": 1}, "2026-08": {"recommend": 1}, "2026-09": {"compare": 2, "recommend": 1}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 795327970, "item_id": 49707998, "url": "https://news.ycombinator.com/item?id=49707998", "by": "data_ders", "date": "2026-09-15", "version": null, "stance": "compare", "quote": "The difference is that Vega-Lite, ggsql, ggplot2 are designed to create a single chart.", "excerpt": "I love ggsql, the team behind it, ggplot and the tidyverse in general! I've been mulling extending dbt Charts to support ggplot, and will likely reach out to the team about this in the next few weeks. The difference is that Vega-Lite, ggsql, ggplot2 are designed to create a single chart. Yes, you can use facet_wrap() to great a series of charts based on a particular variable, but arguably that's still one chart! What", "context": "", "use_case": "charting", "switched_from": "", "story": "Charts built for Chat"}, {"id": 795326705, "item_id": 49707919, "url": "https://news.ycombinator.com/item?id=49707919", "by": "data_ders", "date": "2026-09-15", "version": null, "stance": "compare", "quote": "I like to explain dbt Charts as the Vega-Lite but for BI", "excerpt": "hey -- Anders here, I've been helping the dbt Charts team. I loved this list you've enumerated here > There\u2019s governance, access controls, interactivity, and connectivity to semantic layers I'd add to that list as well: KPIs, dropdowns, text boxes, theming, shared data sources. If you're familiar with Vega-Lite [1], I like to explain dbt Charts as the Vega-Lite but for BI, in that it is a language that specifies all ", "context": "", "use_case": "", "switched_from": "", "story": "Charts built for Chat"}, {"id": 795306064, "item_id": 49706629, "url": "https://news.ycombinator.com/item?id=49706629", "by": "rgbrgb", "date": "2026-09-15", "version": null, "stance": "recommend", "quote": "found vega-lite to be an interesting take as well", "excerpt": "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 depe", "context": "", "use_case": "", "switched_from": "", "story": "Charts built for Chat"}, {"id": 795300272, "item_id": 49706267, "url": "https://news.ycombinator.com/item?id=49706267", "by": "engrav3er40", "date": "2026-09-15", "version": null, "stance": "recommend", "quote": "", "excerpt": "https://openai.com/index/put-data-to-work/ was a compelling demo for me, being able to interact with a artifact and contextually EDA on a series or outliers is lowering the barrier to entry for BI exploration. I think meeting engineers where they work and being flexible and open sourcing these capabilities is really great to see", "context": "", "use_case": "Chart building toolkit", "switched_from": "", "story": "Charts built for Chat"}, {"id": 795295728, "item_id": 49705983, "url": "https://news.ycombinator.com/item?id=49705983", "by": "engrav3er40", "date": "2026-09-15", "version": null, "stance": "compare", "quote": "how does this differ from something like https://github.com/vega/vega-lite", "excerpt": "This looks really slick! I was building something similar, so visuals are re-useable artifacts that external services know how to render, where we ask agents in whatever the interface is, slack, team's other agentic harnesses etc. and the agents receive the spec from the service, in this case dbt charts. if there was a unified spec that was agreed upon these third-party harnesses and apps would all speak the same cha", "context": "", "use_case": "charting spec", "switched_from": "", "story": "Charts built for Chat"}, {"id": 789377408, "item_id": 49336088, "url": "https://news.ycombinator.com/item?id=49336088", "by": "jtbaker", "date": "2026-08-17", "version": null, "stance": "recommend", "quote": "I'd suggest looking at https://vega.github.io/vega-lite/", "excerpt": "For a schema-first (vs. code first) approach (which I think would be a sweet spot for agent driven dashboarding), I'd suggest looking at https://vega.github.io/vega-lite/ or https://vega.github.io/vega/. A little higher level than full D3 but gives you a little higher level approach.", "context": "", "use_case": "Schema-first dashboard visualization", "switched_from": "", "story": "A Preview of DuckDB v2.0"}, {"id": 786108641, "item_id": 49131790, "url": "https://news.ycombinator.com/item?id=49131790", "by": "jiehong", "date": "2026-07-31", "version": null, "stance": "neutral", "quote": "the Vega-lite backend is json mostly based on GG ideas", "excerpt": "To be fair, the Vega-lite backend is json mostly based on GG ideas. In this vein, I think I prefer ggsql that made it to HN recently [0]. [0]: https://ggsql.org/", "context": "", "use_case": "", "switched_from": "", "story": "Flint: A Visualization Language for the AI Era"}, {"id": 781392000, "item_id": 48837000, "url": "https://news.ycombinator.com/item?id=48837000", "by": "NicuCalcea", "date": "2026-07-08", "version": null, "stance": "recommend", "quote": "get familiar with grammar of graphics [0] libraries like Vega-Lite", "excerpt": "That's fair, I generally make charts for publication, so I spend much more time and effort on the details. But I can understand this being useful for quick exploration for some people. Generally speaking, I suggest anyone interested in learning to make charts get familiar with grammar of graphics [0] libraries like Vega-Lite, Observable Plot, ggplot2, Altair. There is a bit of a learning curve if you're used to selec", "context": "", "use_case": "Chart creation", "switched_from": "", "story": "Show HN: Microsoft releases Flint, a visualization language for AI agents"}, {"id": 768991712, "item_id": 48061982, "url": "https://news.ycombinator.com/item?id=48061982", "by": "tosh", "date": "2026-05-08", "version": null, "stance": "recommend", "quote": "vega-lite supports rendering of GeoJSON via 'geoshape'", "excerpt": "vega-lite supports rendering of GeoJSON via 'geoshape' https://vega.github.io/vega-lite/docs/geoshape.html", "context": "", "use_case": "GeoJSON map rendering", "switched_from": "", "story": "GeoJSON"}, {"id": 767816352, "item_id": 47988522, "url": "https://news.ycombinator.com/item?id=47988522", "by": "dleeftink", "date": "2026-05-02", "version": null, "stance": "recommend", "quote": "", "excerpt": "Observable Framework[0] attempted to fill this niche for a while as well, and we'll likely see some of the implementation details in the new Observable Notebook 2.0 format too. [0]: https://github.com/observablehq/framework", "context": "", "use_case": "Data visualization", "switched_from": "", "story": "Show HN: DAC \u2013 open-source dashboard as code tool for agents and humans"}, {"id": 767789441, "item_id": 47986840, "url": "https://news.ycombinator.com/item?id=47986840", "by": "hasyimibhar", "date": "2026-05-02", "version": null, "stance": "recommend", "quote": "They are building the standard grammar (Vega-Lite)", "excerpt": "I mean that's what the Vega team is doing no? They are building the standard grammar (Vega-Lite), along with an implementation (Vega). And they are already quite established with rich ecosystem, and supports a ton of components[0]. The only thing missing is that it expects a CSV or inline data source. But it's probably not too hard to build an extension that connects to a data warehouse with an SQL query. [0] https:/", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: DAC \u2013 open-source dashboard as code tool for agents and humans"}, {"id": 767779248, "item_id": 47986203, "url": "https://news.ycombinator.com/item?id=47986203", "by": "hasyimibhar", "date": "2026-05-02", "version": null, "stance": "recommend", "quote": "It\u2019s my go-to data viz DSL with Claude.", "excerpt": "Why not use Vega-Lite[0]? It\u2019s my go-to data viz DSL with Claude. [0] https://vega.github.io/vega-lite/", "context": "", "use_case": "data visualization with Claude", "switched_from": "", "story": "Show HN: DAC \u2013 open-source dashboard as code tool for agents and humans"}, {"id": 765390801, "item_id": 47836925, "url": "https://news.ycombinator.com/item?id=47836925", "by": "thomasp85", "date": "2026-04-20", "version": null, "stance": "neutral", "quote": "the current Vega-Lite writer we use", "excerpt": "Ah - yes, in theory you could create a \"ggplot2 writer\" which renders the plot object to an R file you can execute. It is not too far away from the current Vega-Lite writer we use. The other direction (ggplot2->ggsql) is not really feasible", "context": "", "use_case": "", "switched_from": "", "story": "ggsql: A Grammar of Graphics for SQL"}, {"id": 765369120, "item_id": 47835570, "url": "https://news.ycombinator.com/item?id=47835570", "by": "jiehong", "date": "2026-04-20", "version": null, "stance": "neutral", "quote": "The cli only produces vega-lite", "excerpt": "The cli only produces vega-lite[0] json graphics, right? It would be nice if it included a rendering engine. [0]: https://github.com/vega/vega-lite", "context": "", "use_case": "", "switched_from": "", "story": "ggsql: A Grammar of Graphics for SQL"}]}