5 ms·
Show HN: leaf – a terminal Markdown previewer with a GUI-like experience
- RivoLink 6mo agoHi 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 https://github.com/RivoLink/leaf I’d appreciate feedback on the UX, missing features, and performance on large Markdown files.
- mfgadv99 6mo ago[flagged]
- yboris 6mo agoPlease 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`.
- RivoLink 6mo agoThanks for your feedback. I added the screenshot and a short description inside it.
- benj111 6mo agoWhy 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.
- RivoLink 6mo agoThere are both "open in editor" and "watch" modes. The idea is not to replace an editor, but to complement it: - "open in editor" lets you edit the file with your preferred editor - "watch" automatically refreshes the preview when the file changes So you can keep your usual workflow while having a fast, structured preview directly in the terminal.
- SupLockDef 6mo ago`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.
- leephillips 6mo agoGlow is also an excellent markdown viewer for the terminal, and it’s in most repositories.
- jonaustin 6mo agoor just use glow which is golang. https://github.com/charmbracelet/glow https://github.com/charmbracelet/glow
- RivoLink 6mo agoThese vulnerabilities have been fixed in the latest release. Thanks for pointing it out!
- timetraveller26 6mo agocool project, how does it compare to glow? https://github.com/charmbracelet/glow https://github.com/charmbracelet/glow
- fragmede 6mo agoIf this project doesn't have open issues going back a year that are unanswered, it's doing better than glow. I forked glow to fix this one specific rendering bug, because the maintainers didn't respond to my bug report. I can't say that my fork is any better maintained, because no one is using it, but glow isn't maintained and has bugs so I wouldn't hold it up as anything other than abandonware.
- kseistrup 6mo agoFor one thing, glow doesn't do math equations.
- DonaldPShimoda 6mo ago> 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.
- localhoster 6mo agoForgot m-dashs and the arch.md file
- DonaldPShimoda 6mo agoI don't think the em-dashes are particularly out of place in a list like this, though it's not the style I use. I didn't realize ARCHITECTURE.md was an LLM thing (though I suppose I would've if I'd opened it); I'll have to keep my eyes open for that one in the future too.
- RivoLink 6mo agoI’ve updated the Features section.
- jasonpeacock 6mo agoI used to use Glow, but now I'm enjoying mdterm: https://github.com/bahdotsh/mdterm https://github.com/bahdotsh/mdterm
- RivoLink 6mo agoThanks everyone for the feedback, this was super helpful. I’m already working on improvements based on your comments.
- dhruv3006 6mo agoThis 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/ https://voiden.md/ we do have a gui with blocks for api testing.
- RivoLink 6mo agoThanks 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.
- RivoLink 6mo agoQuick 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 https://github.com/RivoLink/leaf/issues/51
- kseistrup 5mo agoNow available from AUR: https://aur.archlinux.org/packages/leaf-markdown-viewer-bin https://aur.archlinux.org/packages/leaf-markdown-viewer-bin
- RivoLink 5mo agoThanks again for this, really appreciate it!