A site you can cd into
This site is a folder of markdown notes. I write them in
Obsidian, in a folder of my vault called site, and
that is the whole publishing process. There is no deploy button and no build
I have to remember to run.
How a note gets here
flowchart LR
A[Obsidian vault] -->|sync| B[(Object storage)]
B -->|every minute| C(md-term build --watch)
C --> D[Static pages]
D --> E{Your browser}
- Obsidian syncs the vault to an object store I run myself.
- A small job copies the
sitefolder out of it once a minute. - md-term notices the change and rebuilds the pages.
- A plain web server hands them to you.
A minute or two after I stop typing, the note is live. If I write something the builder cannot read, the site simply stays as it was until I fix it.
Why a terminal
Because a folder of notes already is a file system, and a shell is a good
way to walk one. ls shows what is here, cat opens a note, grep searches
all of them at once. Nothing has to be designed into menus.
It is still an ordinary website underneath. Every note is a complete HTML page, so links can be shared, search engines can read it and it works with JavaScript turned off. The terminal is a layer on top.
Things worth trying
treeto see the whole site at oncegrep -i fuzzyto search every notetheme amber, because green is not the only phosphorpython, thenimport numpy as np: a real Python, running in your browseredit hello.py, write a few lines, press Ctrl+Enter
Note
Files you create with edit stay in your own browser. They never reach
this server.
What comes next
The first real content is the articles about two libraries I maintain, ANFIS Toolbox and highFIS. Shorter things will show up here, in the blog.