Tine v0.3.0 — drop-in faster Logseq OG — more parity + goodies
My announcement, unedited — followed by the sharpest conversation the project has had.
I'm releasing Tine v0.3.0. This one took longer than I wanted, but I hope it's worth it. There are many nice small improvements and bug fixes, see my take on it below, and the full changelog after that, as usual.
But the big change was this. I periodically run an audit loop on Tine: have Claude+Codex look for places where data safety is in danger, or where performance is hit. During one of those I started to smell something fishy: I realized there's a bunch of bugs that look like the way Tine is parsing markdown is … just a bunch of regexes, or something like that? This turned out to be true; while OG has a proper parser (mldoc), Tine had something either slow, incorrect, or both. After some consideration, I decided to have Claude build a mldoc-compatible parser for Tine, which I'm calling lsdoc (for “logseq doc”).
Anyway, this was the idea: the first iteration Claude came up with, despite the clear motivation, turned out to be… not quite a regex mess, but also not a properly designed, linear-time parser. It was, mostly, compatible — a lot of the work went into quite serious differential testing wrt mldoc; and on “typical inputs” quadratic time may not bite you. But that's not what a computer scientist does, so I kept pushing Claude to do it right. That's what v0.3.0 was waiting for, and I think it's mostly done, so here goes. (On my very short subjective experience, I think it IS noticeably faster? but I'm not sure, and this is probably attributable to several other performance fixes, too.)
Other notable items:
- media niceties — waveform view for easy audio navigation, draggable corners for images and videos, etc.
- web: tine.page
- native window controls
- multi-language spellcheck
- configurable asset name templates
…and many others.
If you want to contribute, I'm very thankful for anyone who tests and reports bugs on github! You can also take a look at CONTRIBUTING.md.
The usual AI disclaimer: the only non-AI generated text is the above, everything else (code, docs, web) is AI. Take it or hate it :)