Skip to content

scicloj/babqua

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Babqua

Babqua is a Quarto extension for writing Babashka code in visual documents. Each {.clojure .bb} block in a .qmd file is evaluated by Babashka during rendering, producing code output, charts, diagrams, tables, or computed HTML.

Babqua is a sibling of Janqua, the same idea applied to Jank. Where Janqua targets Jank's emerging ecosystem, Babqua leans on Babashka's batteries — built-in JSON / Hiccup / EDN, and the pods ecosystem (SQLite, AWS, HTML parsing, …) — to make notebooks self-contained and reproducible.

Charts render via Plotly, Vega-Lite, ECharts, Cytoscape, or Highcharts; diagrams via Mermaid and Graphviz; tables as HTML. Rendering follows the Kindly convention, the same way Clay handles Clojure docs.

Experimental — this project is at an early stage. Currently developed and tested on Linux. Feedback and ideas are welcome via GitHub issues or the Scicloj Zulip chat.

Prerequisites

Quick start

Install the extension in your project (Quarto will ask you to confirm — type y and press Enter):

quarto add scicloj/babqua

Create hello.qmd:

---
title: "Hello Babashka"
filters:
  - bb
---

```{.clojure .bb}
(+ 1 2 3)
```

```{.clojure .bb}
^:kind/hiccup
[:div {:style "color: coral; font-size: 24px;"} "Hello from Babashka!"]
```

Render it:

quarto render hello.qmd

License

MIT

About

Babashka notebooks using Quarto

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors