Commit Graph
7 Commits
Author SHA1 Message Date
William CasarinandDaniel D’Aquino 249e765642 c: re-add damus-only C stuff 2025-08-11 16:40:01 -07:00
William CasarinandDaniel D’Aquino 954f48b23d c: move c files into nostrdb in prep for switchover 2025-08-11 16:39:43 -07:00
William Casarin 1f5f1e28a4 nostrdb: pull latest, adding flatcc and lmdb 2023-08-25 19:05:34 -07:00
William Casarin dc7826c4e5 c: add nostrdb c lib 2023-07-21 15:02:01 -07:00
William Casarin 97f10e865f NostrScript
NostrScript is a WebAssembly implementation that interacts with Damus.
It enables dynamic scripting that can be used to power custom list views,
enabling pluggable algorithms.

The web has JavaScript, Damus has NostrScript. NostrScripts can be
written in any language that compiles to WASM.

This commit adds a WASM interpreter I've written as a mostly-single C
file for portability and embeddability. In the future we could
JIT-compile these for optimal performance if NostrScripts get large and
complicated. For now an interpreter is simple enough for algorithm list
view plugins.

Changelog-Added: Add initial NostrScript implementation
Signed-off-by: William Casarin <jb55@jb55.com>
2023-07-03 14:31:38 -07:00
William Casarin c6ab1de639 Add bolt11 parser and Invoice View
Changelog-Added: Display bolt11 invoice widgets on posts
2022-10-19 07:46:05 -07:00
William Casarin eb99e6c323 Rewrite note parsing in C
This eliminates any parsing choppyness

Fixes: #32
Signed-off-by: William Casarin <jb55@jb55.com>
2022-10-17 15:22:28 -07:00