Obsidiary a device for the publishing of private libraries

Free · Open source · MIT

Obsidiary

Whereby a folder of Obsidian markdown is made into a swift, linked and searchable site: with wikilinks, transclusion, callouts, backlinks, a graph, and .canvas files that truly render.


Obsidian stays your editor. This is only the other half — the part that puts a vault on the web and makes it legible to someone who does not have your vault.

Obsidiary · to install 005.74 OBS
npm create obsidiary@latest

Seen in the wild — my own notes run on this, set from a repository holding nothing but markdown.

Fig. I. The link-graph of a small vault, drawn by the engine itself.

Cap. I

Of the uses to which it is fairly put


There are honest reasons to publish a vault and dishonest ones, and it is worth saying plainly which are which before you spend an afternoon on it.

You already write in Obsidian. Obsidian Publish is $10 a month. This is free, the output is yours, and your notes never leave a folder you control.

A thinking log where the links are the point. Backlinks with the surrounding sentence, a real graph, transclusion. If a blog would flatten what you are doing, this will not.

Documentation that lives with the code. Write docs in Obsidian, publish them from the repository they describe. No CMS, no export step, no second copy to drift.

Notes meant to be read, not merely kept. Course material, teaching notes, reading notes. Canvas files carry the diagrams; embeds mean a thing is written once and reused.

Publishing a vault you do not own. Point it at any public repository — a study group’s shared notes, a spec, someone’s open wiki. Nothing to fork, nothing to maintain.

Reading a vault with zero commitment. The live view renders any public vault in your browser. No clone, no build, no account. Useful before committing to anything.

and of the author's own use →

Cap. II

Of the author's own shelves


I built this because I wanted it. Engineering notes and whatever I am currently figuring out live at my own domain; alongside them, these.

Caveat

Wherein it will not serve


Private notes
A public repository means a public site. Selective publishing exists, but the safe answer is a separate private repository.
Editing on the web
There is no web editor and there will not be one. Obsidian — or any text editor — is the editor.
Being a blog engine
No comments, no newsletter, no scheduling. If you want a blog, write a blog.

Cap. III

The setting-forth, in three motions


  1. Scaffold

    npm create obsidiary@latest my-notes

    No dependencies, and a single question: is your vault a folder here, or a repository elsewhere?

  2. Point it at the notes

    obsidiary({
      vault: './vault',       // a folder here
      // repo: 'you/notes',   // …or its own repository
    })

    Notes in their own repository is the whole idea — the engine is a dependency, never a fork of your writing.

  3. Set it forth

    npx wrangler deploy

    Or hand the repository to Vercel or Netlify, or turn on GitHub Pages.

a table of presses →

Tabula

Of presses that ask nothing


PressCommandBandwidthDomainCommerce
Cloudflare recommended npx wrangler deploy unlimited free allowed
Vercel import the repository 100 GB free not on free
Netlify import the repository 100 GB free allowed
GitHub Pages Settings → Pages → Actions 100 GB soft free not on free

Cloudflare is the recommendation: unlimited bandwidth, free custom domains, and no restriction on commercial use. Vercel and GitHub Pages cap at 100 GB and forbid commercial sites.

Apologia

Quartz is good. Use it, unless…


  1. You want your notes in their own repository. Quartz has no first-class support for it; everyone hand-rolls a submodule. Here it is one line of configuration.
  2. You are weary of upgrade conflicts. Quartz ships a content/ folder upstream, so most updates end in a merge inside your own writing. Distribution as a package was proposed and declined. Here the engine is a dependency: npm update, and nothing to resolve.
  3. You want it to feel like the application. Sidebar, outline, backlinks with context, ⌘K, hover previews, graph, canvas — not a documentation template.