Hi fellow knowledge management guru’s,
I am posting here today in the hope to share and compare obsidian publishing tools. I really liked Obsidian Publish but it was lacking a few key features and after trying other people’s publishing tools I decided to build my own. An example of my shared notes from my Obsidian Vault can be seen at https://dentropy.github.io/ with the source code at → dentropy/dentropys-obsidian-publisher
Features of my Publisher
- Unique ID’s (UUID) stored in Yaml Front Matter
- RBAC Groups stored in Yaml Front Matter
- Build static site based on RBAC Groups
- Export to SQLite Database
Why build my own Obsidian Publisher
- Document ID’s required for Social Annotation
- I personally rename my documents a lot which changes the URL for publish.obsidian.md and similar Obsidian site builders
- I use a lot of website annotation tools such as raindrop.io, hypothes.is, and memex.garden. Having the URL for a note change really messes with these tools.
- I have a workflow where I can publish versioned articles to dentropy.github.io and have people edit and comment on them with these annotation tools. If I rename the document these annotations break.
- Build a Static Site for Reliability
- I like the idea of using scp or rsync to publish my vault rather than github actions.
- It is easier to build locally and debug, I was using Obsidian Mkdocs Publisher before and the CDN required to render parts of the site went down breaking my site. I still highly recommend ObsidianPublisher/obsidian-github-publisher if you want to go down that route.
- RBAC(Rule Based Access Control)
- Since I store my notes in a separate encrypted git repo it is important that only notes I explicitly share be published. Obsidian Publish has a great way to do this but the metadata is not stored in the documents, my Obsidian Publisher stores the state of published documents in the yaml front matter.
- I also have notes I want to share with specific people that I do not want public. My Obsidian Publishing tool can build a static site that includes documents that are part of a group that is stored in the yaml front matter.
- Import to SQLite for Publishing and NLP (Natural Language Processing)
- With the notes, group permissions, and links inside SQLite I can easily develop a CRUD website that can require authentication to view specific notes or convert and dump my notes to something like wikijs, ghost, or wordpress.
- I don’t know if anyone else is calculating embeddings on their notes and how to go about doing it inside Obsidian naively but this is the approach I am taking.
Similar Forum Posts and Projects
- Forum Posts
- Projects
- obsidian-publish-mkdocs/mkdocs.yml at main · jobindjohn/obsidian-publish-mkdocs · GitHub
- devidw/obsidian-to-hugo: Process Obsidian notes to publish them with Hugo. Supports transformation of Obsidian wiki links into Hugo shortcodes for internal linking.
- project-cool/obsidian-publish-action: Obsidian publish github action
- Obsidian Mkdocs Publisher