HN
Today

Gribouille 0.3.0: A Grammar of Graphics for Typst

Gribouille 0.3.0 drops with refined guide controls, themed composition, and better area chart defaults, enhancing graphic creation in the Typst document system. This update solidifies Gribouille's position as a powerful Grammar of Graphics implementation, drawing significant Hacker News attention to both the library's capabilities and Typst's burgeoning ecosystem.

51
Score
12
Comments
#4
Highest Rank
13h
on Front Page
First Seen
Jun 19, 5:00 AM
Last Seen
Jun 19, 5:00 PM
Rank Over Time
844666771099813

The Lowdown

Gribouille, a Grammar of Graphics implementation for the Typst document compiler, has released version 0.3.0. This update, while narrower in scope than previous ones, introduces several key features and refinements aimed at providing finer control over graphics and improving usability. The overarching goal remains to offer an elegant and powerful way to create data visualizations within Typst.

  • Streamlined Guide Control: A new unified guides() function allows for easy hiding of axis ticks, labels, and legends (e.g., guides(x: none), guides(default: none)) without complex theme modifications. This functionality extends to radial coordinates as well.
  • Themed Composition: The compose() function now accepts a theme: parameter, enabling consistent styling across multiple panels and their chrome (titles, legends, tags). A new defer() helper replaces the older plot(..., defer: true) syntax.
  • Improved geom-area() Defaults: The geom-area() now defaults to stat: "align" and position: "stack", simplifying the creation of stacked area charts and automatically handling groups with mismatched x-values.
  • Annotation Overflow: The annotate() function gains a clip: false option, allowing annotations to extend beyond the panel boundaries, useful for external labels or decorative elements.
  • Under-the-Hood Fixes: The release includes numerous bug fixes, particularly for legend layout, ensuring better alignment and preventing silent overprinting. Enhancements also cover stat-bin calculations, sqrt/log10 transform validations, and general scale behavior.
  • Editor Support: The package now ships with Tinymist-friendly docstrings, improving editor integration by providing formatted parameters, return values, and examples on hover.

This release primarily focuses on polish, bug fixes, and providing more direct control over common visualization elements, making Gribouille an increasingly robust tool for generating publication-quality graphics in Typst. The author plans for more geoms and examples in future updates.

The Gossip

Typst's Triumphant Takeover Talk

Many users express fervent enthusiasm for Typst, hailing it as a revolutionary open-source project with the potential to largely replace LaTeX and, more controversially, Markdown. Commenters praise its power, ease of use, and aesthetic appeal, seeing it as a significant step forward in document creation and even enjoying the creative process of designing documents with it.

Markdown's Modest Markup vs. Typst's Mighty Markup

A core debate centers on whether Typst can or should replace Markdown. Proponents argue Markdown lacks extensibility and a proper spec, making it insufficient for 'real' documentation where Typst's features like scripting, custom styling, and robust typography shine. Critics, however, defend Markdown's strength in its simplicity, raw text readability, and lack of a compilation step, asserting its utility for basic READMEs and arguing against over-complicating content with presentation.

Interactive Imagery Inquiries

One user asks about the possibility of rendering Gribouille graphics as SVG to enable interactive features like hover effects. This question sparks a broader philosophical discussion among commenters about the balance between 'perfect' static rendering and the importance of reproducibility and interactivity in modern data visualization, with some questioning the need for any single tool to universally 'replace' others.