Bringing Gleam to Obsidian: A Minimal Plugin Journey
summary
Builds a minimal Obsidian plugin by compiling Gleam to JavaScript, wiring a TypeScript wrapper and copying dist into a vault to reload via the community plugins toggle; an unexpected blocker is changing the build target to ES2020 target change which costs about two hours to debug. First approach maps many Obsidian methods through JS glue and @types/obsidian, brittle but quick; second models effects as ADTs with a run function, allowing unit tests of logic. Achieves a working console page list, but tests and polished ergonomics remain unfinished. Gleam → JavaScript target
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:31What is Obsidian
- 5:57Personal workflow
- 12:07Why write a plugin
- 15:00Traditional plugin dev
- 19:25Setting up Gleam for Obsidian plugin development
- 23:06Building the plugin
- 25:13First functionality
- 29:53Refining architecture
- 32:27Conclusions
- 34:39Q&A
related talks
28mFullstack Gleam: Static Types on the BEAM, and Javascript You'll Love
34mTowards a simpler JavaScript ecosystem
47mImport-Substituting Svelte, or How I Made Glimmer 40% Faster
23mBEAM's bright future with Gleam (and JavaScript?)
22mBuilding JavaScript for JavaScripters
33mSecrets of the Glimmer VM
32mTooling Like It's 2025
30mOptimizing for Developer Delight
