13 comments

[ 2.1 ms ] story [ 34.2 ms ] thread
Hi HN,

I built leaf, a Markdown previewer that runs entirely in the terminal.

It supports keyboard/mouse navigation, syntax highlighting, tables, checkboxes, clickable links, search, table of contents, local Markdown links, inline images, Mermaid diagrams, and LaTeX-to-Unicode rendering.

It works on Linux, macOS, Windows, and Termux.

GitHub: https://github.com/RivoLink/leaf

I’d appreciate feedback on the UX, missing features, and performance on large Markdown files.

Please consider adding a screenshot directly into the README (rather than a separate link).

Also maybe a single paragraph at the top describing the project rather than jumping into `install`.

Why a previewer rather than an editor that updates as you write?

Do you have a specific use case?

It seems to me that markdown is for writing with the ultimate output supposedly being html. Having a viewer of the markdown doesn't seem to add anything.

Whereas making it an editor makes it more of a rich text editor.

I'm not particularly saying youre wrong, more posing a philosophical question.

`pandoc "$@ | lynx -stdin` and I save you from 225 potential supply chain attack crates.

`cargo audit` finds 3 vulnerabilities, you should fix them.

Blazing safe.

> Features:

> <bullet> <checkbox> description 1

> <bullet> <checkbox> description 2

> ...

Like... why are we doing this. What is the purpose of having a bunch of green checkbox emojis in the already bulleted list of features. The only thing it tells me is that an LLM was probably used extensively in building this project.

Thanks everyone for the feedback, this was super helpful. I’m already working on improvements based on your comments.
This is an interesting approach - I guess you did not move away to a gui - but tried to have a guy-like experience in the terminal only - in https://voiden.md/ we do have a gui with blocks for api testing.
Thanks for the feedback! You're absolutely right. The goal was to create a GUI-like experience directly in the terminal. Your project looks really interesting too.
Quick follow-up for macOS users:

I opened an issue to test the “open in editor” feature:

- Shift+E should select/configure the editor

- Cmd+E should open the current Markdown file in the selected editor

Tested on Linux/Windows/Android so far.

Feedback from macOS users would be really helpful: https://github.com/RivoLink/leaf/issues/51