# Show and tell

**URL:** https://talk.observablehq.com/c/show-and-tell/7.md

[Latest](https://talk.observablehq.com/latest.md) · [Categories](https://talk.observablehq.com/categories.md)

---

## [About the Show and tell category](https://talk.observablehq.com/t/about-the-show-and-tell-category/2658)

<div class="topic-metadata">

**Author:** [@jashkenas](https://talk.observablehq.com/u/jashkenas)\
**Replies:** 0\
**Last updated:** [December 17, 2019, 6:43pm UTC](https://talk.observablehq.com/t/about-the-show-and-tell-category/2658 "2019-12-17T18:43:36Z")

</div>

Show off your finest notebooks, share how you built them, and get thoughtful feedback.

---

## [Slideshow presentation for Observable](https://talk.observablehq.com/t/slideshow-presentation-for-observable/10866)

<div class="topic-metadata">

**Author:** [@jwoLondon](https://talk.observablehq.com/u/jwoLondon)\
**Replies:** 5\
**Last updated:** [September 22, 2026, 2:42pm UTC](https://talk.observablehq.com/t/slideshow-presentation-for-observable/10866 "2026-09-22T14:42:56Z")

</div>

As I find myself repeatedly wanting to embed Observable content in presentations, I thought I’d create an Observable-friendly interface to reveal.js. I’ve tried to make its use require minimum changes to Observable cell…

---

## [PCA of Flags](https://talk.observablehq.com/t/pca-of-flags/10850)

<div class="topic-metadata">

**Author:** [@stschiff](https://talk.observablehq.com/u/stschiff)\
**Replies:** 1\
**Last updated:** [September 21, 2026, 10:23pm UTC](https://talk.observablehq.com/t/pca-of-flags/10850 "2026-09-21T22:23:20Z")

</div>

Hi all, I have created a tutorial on Principal Components analysis based on flags: https://observablehq.com/@stschiff/pca-of-flags (in case you’ve seen this a couple of weeks back, I have substantially beefed it up no…

---

## [Geomatics with duckdb](https://talk.observablehq.com/t/geomatics-with-duckdb/10856)

<div class="topic-metadata">

**Author:** [@neocarto](https://talk.observablehq.com/u/neocarto)\
**Replies:** 2\
**Last updated:** [September 18, 2026, 3:45pm UTC](https://talk.observablehq.com/t/geomatics-with-duckdb/10856 "2026-09-18T15:45:16Z")

</div>

I’m starting to create a series of notebooks about geospatial processing with DuckDB. Here, I show how to import GeoJSON files. https://observablehq.com/@neocarto/how-to-import-geo-json-into-duck-db And here, how to c…

---

## [Hyperbolic tree viewer](https://talk.observablehq.com/t/hyperbolic-tree-viewer/10852)

<div class="topic-metadata">

**Author:** [@EE2dev](https://talk.observablehq.com/u/EE2dev)\
**Replies:** 2\
**Last updated:** [September 15, 2026, 9:54pm UTC](https://talk.observablehq.com/t/hyperbolic-tree-viewer/10852 "2026-09-15T21:54:30Z")

</div>

With great help of @Lao here is my first visualization with the new notebook 2.0. I truly enjoyed it - especially @Lao chiming in :star\_struck: - gave me the community vibes back. I will post my experience and some sugge…

---

## [Sql Cells are Awsome](https://talk.observablehq.com/t/sql-cells-are-awsome/10854)

<div class="topic-metadata">

**Author:** [@neocarto](https://talk.observablehq.com/u/neocarto)\
**Replies:** 2\
**Last updated:** [September 15, 2026, 7:40pm UTC](https://talk.observablehq.com/t/sql-cells-are-awsome/10854 "2026-09-15T19:40:25Z")

</div>

It’s really cool actually :blush: https://observablehq.com/@neocarto/sql-cells-are-awsome

---

## [Your Sunset, Their Sunrise 🌅 🌄](https://talk.observablehq.com/t/your-sunset-their-sunrise/10851)

<div class="topic-metadata">

**Author:** [@MarioDelgadoSr](https://talk.observablehq.com/u/MarioDelgadoSr)\
**Replies:** 0\
**Last updated:** [September 14, 2026, 7:59pm UTC](https://talk.observablehq.com/t/your-sunset-their-sunrise/10851 "2026-09-14T19:59:53Z")

</div>

https://observablehq.com/@ambassadors/your-sunset-their-sunrise Every day, somewhere on Earth, your sunrise is someone else’s sunset. This notebook finds those two points for you: given your location, it draws two spots…

---

## [Basic Instructions for setting up a Notebook-to-Static-Site Workflow](https://talk.observablehq.com/t/basic-instructions-for-setting-up-a-notebook-to-static-site-workflow/10848)

<div class="topic-metadata">

**Author:** [@shadoof](https://talk.observablehq.com/u/shadoof)\
**Replies:** 0\
**Last updated:** [September 14, 2026, 12:38am UTC](https://talk.observablehq.com/t/basic-instructions-for-setting-up-a-notebook-to-static-site-workflow/10848 "2026-09-14T00:38:54Z")

</div>

For what it’s worth and with comments/suggestions gratefully received here is a little site – made with Observable Desktop and Notebook Kit – that aims to get code-shy students (including writers and humanists) onto and …

---

## [Gallery of Plot examples with Observable 2.0](https://talk.observablehq.com/t/gallery-of-plot-examples-with-observable-2-0/10791)

<div class="topic-metadata">

**Author:** [@jwoLondon](https://talk.observablehq.com/u/jwoLondon)\
**Replies:** 2\
**Last updated:** [September 10, 2026, 8:14am UTC](https://talk.observablehq.com/t/gallery-of-plot-examples-with-observable-2-0/10791 "2026-09-10T08:14:36Z")

</div>

As part of the process of converting my teaching materials to use ‘pure’ Observable 2.0 notebooks, I have assembled the following gallery of examples. This may be useful for others moving from ‘OJS’ to JS/TS cells with t…

---

## [Geoviz with Observable 2.0](https://talk.observablehq.com/t/geoviz-with-observable-2-0/10805)

<div class="topic-metadata">

**Author:** [@neocarto](https://talk.observablehq.com/u/neocarto)\
**Replies:** 2\
**Last updated:** [September 10, 2026, 8:12am UTC](https://talk.observablehq.com/t/geoviz-with-observable-2-0/10805 "2026-09-10T08:12:14Z")

</div>

The 33 notebooks explaining how the geoviz library works have been updated for Observable 2.0 (Standard Library 2026). Everything works perfectly with the new JS cells :tada::rocket: See https://observablehq.com/@neocar…

---

## [require() → import converter](https://talk.observablehq.com/t/require-import-converter/10836)

<div class="topic-metadata">

**Author:** [@MarioDelgadoSr](https://talk.observablehq.com/u/MarioDelgadoSr)\
**Replies:** 0\
**Last updated:** [September 9, 2026, 7:14pm UTC](https://talk.observablehq.com/t/require-import-converter/10836 "2026-09-09T19:14:19Z")

</div>

https://observablehq.com/@ambassadors/require-import-converter If you’re migrating old notebooks to Observable 2.0, you’ve probably hit this: require("some-package@1.2.3") just doesn’t work anymore, and figuring out …

---

## [Mixed Integer Programming](https://talk.observablehq.com/t/mixed-integer-programming/5414)

<div class="topic-metadata">

**Author:** [@tomlarkworthy](https://talk.observablehq.com/u/tomlarkworthy)\
**Replies:** 20\
**Last updated:** [September 8, 2026, 7:41pm UTC](https://talk.observablehq.com/t/mixed-integer-programming/5414 "2026-09-08T19:41:06Z")

</div>

I find Mixed Integer Programming extremely useful for many tasks, so it seemed like a weird omission there is not much in JS land. Certainly none that do the symbolic rearrangement for you into canonical form.

---

## [My First Observable 2.0 Notebook](https://talk.observablehq.com/t/my-first-observable-2-0-notebook/10815)

<div class="topic-metadata">

**Author:** [@MarioDelgadoSr](https://talk.observablehq.com/u/MarioDelgadoSr)\
**Replies:** 2\
**Last updated:** [September 8, 2026, 3:22pm UTC](https://talk.observablehq.com/t/my-first-observable-2-0-notebook/10815 "2026-09-08T15:22:22Z")

</div>

I had this idea to use D3 Word Cloud from a prior notebook and have it ‘drive’ the indexing into a video hosting an interview with Mike. I’m already thinking of a future variation that dynamically leverages the API into…

---

## [An Observable 2.0 version of SankeyChart](https://talk.observablehq.com/t/an-observable-2-0-version-of-sankeychart/10816)

<div class="topic-metadata">

**Author:** [@jwoLondon](https://talk.observablehq.com/u/jwoLondon)\
**Replies:** 2\
**Last updated:** [September 8, 2026, 12:23am UTC](https://talk.observablehq.com/t/an-observable-2-0-version-of-sankeychart/10816 "2026-09-08T00:23:33Z")

</div>

I realise there are many many Sankey chart libraries out there, but in preparing my teaching materials I needed to create an Observable 2.0-friendly version of SankeyChart. In doing so I ended up creating a version with …

---

## [Chrome extension that adds dark theme (completely broken)](https://talk.observablehq.com/t/chrome-extension-that-adds-dark-theme-completely-broken/10754)

<div class="topic-metadata">

**Author:** [@nxrix](https://talk.observablehq.com/u/nxrix)\
**Replies:** 5\
**Last updated:** [September 7, 2026, 6:53pm UTC](https://talk.observablehq.com/t/chrome-extension-that-adds-dark-theme-completely-broken/10754 "2026-09-07T18:53:50Z")

</div>

Made a small theme switcher just for fun.

---

## [Spreadsheet Lens](https://talk.observablehq.com/t/spreadsheet-lens/10781)

<div class="topic-metadata">

**Author:** [@tomlarkworthy](https://talk.observablehq.com/u/tomlarkworthy)\
**Replies:** 0\
**Last updated:** [August 30, 2026, 4:33pm UTC](https://talk.observablehq.com/t/spreadsheet-lens/10781 "2026-08-30T16:33:37Z")

</div>

Lenses have totally reshaped my programming world model. Things I did not think were possible are possible. I thought a thing had to choose between being a spreadsheet or a notebook, but with lenses it can be both at the…

---

## [Theme + Inputs in Claude Code Design](https://talk.observablehq.com/t/theme-inputs-in-claude-code-design/10780)

<div class="topic-metadata">

**Author:** [@tomlarkworthy](https://talk.observablehq.com/u/tomlarkworthy)\
**Replies:** 0\
**Last updated:** [August 29, 2026, 7:48am UTC](https://talk.observablehq.com/t/theme-inputs-in-claude-code-design/10780 "2026-08-29T07:48:07Z")

</div>

I quite like Claude Code Design so I have setup a claude.ai hosted Design System that understands ObservableKit Themes and Observable Inputs. There is no 1st party mechanism for sharing this, so you have to call /design-…

---

## [Software paper: teractive visualization dashboard for bibliometric analysis of Library and InformationScience (LIS) journals](https://talk.observablehq.com/t/software-paper-teractive-visualization-dashboard-for-bibliometric-analysis-of-library-and-informationscience-lis-journals/10773)

<div class="topic-metadata">

**Author:** [@Kahernandezg](https://talk.observablehq.com/u/Kahernandezg)\
**Replies:** 0\
**Last updated:** [August 24, 2026, 8:28pm UTC](https://talk.observablehq.com/t/software-paper-teractive-visualization-dashboard-for-bibliometric-analysis-of-library-and-informationscience-lis-journals/10773 "2026-08-24T20:28:50Z")

</div>

Hello, Observable Talk community: I would like to share a recently published software paper in Cuadernos de Información, an emerging academic journal from Peru. The paper presents an interactive visualization dashboard …

---

## [Used observablehq plot in a new paper on human brain evolution](https://talk.observablehq.com/t/used-observablehq-plot-in-a-new-paper-on-human-brain-evolution/10767)

<div class="topic-metadata">

**Author:** [@neurogenomics](https://talk.observablehq.com/u/neurogenomics)\
**Replies:** 1\
**Last updated:** [August 21, 2026, 2:24pm UTC](https://talk.observablehq.com/t/used-observablehq-plot-in-a-new-paper-on-human-brain-evolution/10767 "2026-08-21T14:24:38Z")

</div>

Hi all, we recently submitted a manuscript for publication that explores how the human brain got to be so big (spoiler: turns out to unintuitively be the downregulation of mitochondria). As part of this, I ran an RNAseq…

---

## [A sugary DSL to create getter functions](https://talk.observablehq.com/t/a-sugary-dsl-to-create-getter-functions/10768)

<div class="topic-metadata">

**Author:** [@SuperMikal](https://talk.observablehq.com/u/SuperMikal)\
**Replies:** 0\
**Last updated:** [August 20, 2026, 8:35pm UTC](https://talk.observablehq.com/t/a-sugary-dsl-to-create-getter-functions/10768 "2026-08-20T20:35:07Z")

</div>

I made a helper that lets me write data.map(get.x.y.z) instead of a lambda, plus helpful errors and some flexibility, and I’m pretty happy with how it turned out! Don’t mind the half-baked contents in the rest of the not…

---

## [Basic Desktop Editor](https://talk.observablehq.com/t/basic-desktop-editor/10762)

<div class="topic-metadata">

**Author:** [@nxrix](https://talk.observablehq.com/u/nxrix)\
**Replies:** 3\
**Last updated:** [August 16, 2026, 6:45pm UTC](https://talk.observablehq.com/t/basic-desktop-editor/10762 "2026-08-16T18:45:35Z")

</div>

I made a custom editor for myself to use offline. It’s only been two days since I started working on it, so it’s still very basic. I don’t use file attachments or databases, so it’s already enough for my needs, but I’d …

---

## [High Speed Multi barcode tracking lab notes](https://talk.observablehq.com/t/high-speed-multi-barcode-tracking-lab-notes/10764)

<div class="topic-metadata">

**Author:** [@tomlarkworthy](https://talk.observablehq.com/u/tomlarkworthy)\
**Replies:** 0\
**Last updated:** [August 14, 2026, 6:58am UTC](https://talk.observablehq.com/t/high-speed-multi-barcode-tracking-lab-notes/10764 "2026-08-14T06:58:36Z")

</div>

I been working on Optical tracking on and (mostly) off for 14 years now. I finally have the algorithm in my head more or less working. The killer feature is recognizing a circular barcode from a single pixel row scan, …

---

## [Annotate text spans, data and pictures inline](https://talk.observablehq.com/t/annotate-text-spans-data-and-pictures-inline/10749)

<div class="topic-metadata">

**Author:** [@tomlarkworthy](https://talk.observablehq.com/u/tomlarkworthy)\
**Replies:** 6\
**Last updated:** [August 13, 2026, 6:21am UTC](https://talk.observablehq.com/t/annotate-text-spans-data-and-pictures-inline/10749 "2026-08-13T06:21:08Z")

</div>

A useful story telling device like an aside, especially given it can point to things in data space on a chart. The contents of an annotation is a normal cell, so you can embed drawings or programs in them, but by defau…

---

## [A library similar to notebook kit](https://talk.observablehq.com/t/a-library-similar-to-notebook-kit/10719)

<div class="topic-metadata">

**Author:** [@nxrix](https://talk.observablehq.com/u/nxrix)\
**Replies:** 5\
**Last updated:** [August 9, 2026, 1:59pm UTC](https://talk.observablehq.com/t/a-library-similar-to-notebook-kit/10719 "2026-08-09T13:59:42Z")

</div>

I made a small library that can dynamically render OJS cells in the browser.

---

## [Complex plot mark](https://talk.observablehq.com/t/complex-plot-mark/10738)

<div class="topic-metadata">

**Author:** [@nxrix](https://talk.observablehq.com/u/nxrix)\
**Replies:** 3\
**Last updated:** [August 7, 2026, 9:46am UTC](https://talk.observablehq.com/t/complex-plot-mark/10738 "2026-08-07T09:46:18Z")

</div>

I made a custom mark for showing complex functions. It can be changed simply to render GLSL shaders. I tried my best to avoid any memory leak and optimized it as much as I knew and was able, but if you find something I…

---

## [Demystifying the QR Code: An Interactive Guide](https://talk.observablehq.com/t/demystifying-the-qr-code-an-interactive-guide/10751)

<div class="topic-metadata">

**Author:** [@MarioDelgadoSr](https://talk.observablehq.com/u/MarioDelgadoSr)\
**Replies:** 2\
**Last updated:** [August 6, 2026, 11:41pm UTC](https://talk.observablehq.com/t/demystifying-the-qr-code-an-interactive-guide/10751 "2026-08-06T23:41:27Z")

</div>

An experimental project developed with Google Gemini:

---

## [Assembly Script](https://talk.observablehq.com/t/assembly-script/10753)

<div class="topic-metadata">

**Author:** [@tomlarkworthy](https://talk.observablehq.com/u/tomlarkworthy)\
**Replies:** 0\
**Last updated:** [August 6, 2026, 6:21pm UTC](https://talk.observablehq.com/t/assembly-script/10753 "2026-08-06T18:21:41Z")

</div>

Its not that bad to bundle the assembly script toolchain and it gives Zig like performance for \<2Mb of bloat. I was doing numerics and could noticeably feel the performance go up after a few seconds …and it was Javascrip…

---

## [Seal script translation of the Daodejing (Tao Te Ching)](https://talk.observablehq.com/t/seal-script-translation-of-the-daodejing-tao-te-ching/10745)

<div class="topic-metadata">

**Author:** [@Lao](https://talk.observablehq.com/u/Lao)\
**Replies:** 0\
**Last updated:** [July 28, 2026, 4:13am UTC](https://talk.observablehq.com/t/seal-script-translation-of-the-daodejing-tao-te-ching/10745 "2026-07-28T04:13:12Z")

</div>

I’m about to start a big project for work, so I wanted to do a UI project with tactile controls, and try out the new 2.0 notebooks. The Daodejing is the foundational text in Daoism. It is about aligning yourself with th…

---

## [Greatest thing ever (that I have made): bidirectional SVG code \<-\> image editor](https://talk.observablehq.com/t/greatest-thing-ever-that-i-have-made-bidirectional-svg-code-image-editor/10744)

<div class="topic-metadata">

**Author:** [@tomlarkworthy](https://talk.observablehq.com/u/tomlarkworthy)\
**Replies:** 0\
**Last updated:** [July 27, 2026, 8:27pm UTC](https://talk.observablehq.com/t/greatest-thing-ever-that-i-have-made-bidirectional-svg-code-image-editor/10744 "2026-07-27T20:27:20Z")

</div>

Lots of functional theory went into this absolutely bonkers thing. It is entirely possible to synchronize a drawing with something as complex as SVG, so you can swap between coding it and drawing with it as you please. I…

---

## [grid container, persisted cells and (basic) Audio DAW Demo](https://talk.observablehq.com/t/grid-container-persisted-cells-and-basic-audio-daw-demo/10743)

<div class="topic-metadata">

**Author:** [@tomlarkworthy](https://talk.observablehq.com/u/tomlarkworthy)\
**Replies:** 0\
**Last updated:** [July 25, 2026, 5:00pm UTC](https://talk.observablehq.com/t/grid-container-persisted-cells-and-basic-audio-daw-demo/10743 "2026-07-25T17:00:23Z")

</div>

Been thinking a lot about layout and end-user programmability. This grid container lets you break free of the cell layout, while what is inside the grid is still Observable reactive cells. When the grid is changed, t…

[Next page](https://talk.observablehq.com/c/show-and-tell/7.md?page=1)
