Settings

Theme

Show HN: Decksh – a DSL for presentations and data visualizations

github.com

2 points by ajstarks 10 months ago · 1 comment · 1 min read

Reader

decksh is a domain-specific language for presentations, information displays, and data visualizations. I built decksh as a way to have complete control over my presentations, and to have a portable, documented, long-lasting format for information.

decksh generates the deck[1] markup language which uses a percentage-based coordinate system, and may be rendered as PDF, SVG, or PNG. decksh is written in the Go programming language, and may be called as a library. The decksh object reference[2] describes the language.

decksh works with text in many orientations (left, centered, end, rotated) as well as text and code blocks, images (GIF, PNG, JPG), graphics (lines, curve, arc, circle, rectangle, square, ellipse, polygon, polylines), along with composite objects (lists, arrows, braces, brackets). Charts and graphs are also included: (bar, line, scatter, donut, dot, lego, proportional maps, fan, bowtie, slope, and radial charts).

decksh supports variables, color naming, (SVG names, rgb, hex rgb, and hsv), user-defined functions, loops, and conditionals.

Examples of decksh use are collected in the deckviz[3] repo, and may be seen on SpeakerDeck[4]. The Du Bois data visualization re-creations[5] were done with decksh.

[1] https://github.com/ajstarks/deck [2] https://speakerdeck.com/ajstarks/decksh-object-reference [3] https://github.com/ajstarks/deckviz [4] https://speakerdeck.com/ajstarks [5] https://speakerdeck.com/ajstarks/recreating-the-dubois-data-...

rootnod3 10 months ago

Just add some parentheses and Greenspun's 10th rule is achieved yet again :D

[1] https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection