Shipped this project!
silo
silo is a dead simple, opinionated notes TUI built in Go using Bubble Tea.
I built it over the last couple days to explore building a full terminal workspace from scratch including a simple editor, file explorer, and markdown renderer for the terminal.
the challenge(s)
In addition to learning a lot about Bubble Tea’s model/update/view pattern and how to organize a larger TUI app without it getting messy, the most difficult part was figuring out how to organize multiple interactive panes in a TUI while keeping state manageable. It took some iteration to get the sidebar, editor, and preview modes to interact cleanly.
Basic workflow
-
tabswitch between sidebar and editor -
ncreate files in the sidebar -
ctrl+ssave -
ctrl+etoggle autosave -
ctrl+xrender markdown preview - … and more, see github!
repo
https://github.com/nxrmqlly/silo
install
Linux and MacOS
run this in your terminal:
curl -sSL https://raw.githubusercontent.com/nxrmqlly/silo/master/install.sh | bash
then launch:
silo
Windows
- download the latest .exe from releases
- add the .exe to your
PATH - run:
silo
why?
I wanted something that felt like a small personal workspace in the terminal without the complexity of configuring a full editor like neovim and learning odd keystrokes (i’ll get there eventually)
~1680 lines of Go