Obsidian Syntax, Fully Rendered
Sidian's goal has always been simple: if it works in Obsidian, it should work on your published site. We've shipped a batch of rendering improvements that close the gap significantly.
Foldable callouts
Add a - to collapse a callout by default, or + to keep it expanded. Click the title to toggle. These are live examples:
This callout is collapsed by default
You expanded it. The - suffix hides the body until the reader clicks the title.
This one starts expanded
Use + when the content is important enough to show immediately, but still collapsible.
Callouts without a modifier behave as before: always shown, not interactive.
Custom task checkbox states
Standard Markdown only knows [ ] and [x]. Obsidian extends this with states used by task management workflows — they now render as styled indicators instead of raw text:
[ ] = not started,
[ x ] = completed ,
[ / ] = in progress,
[ - ] = cancelled,
[ > ] = forwarded,
[ ? ] = question,
[ ! ] = important,
[ * ] = starred
- Not started
- Completed
- In progress
- Cancelled
- Forwarded
- Question
- Important
- Starred
Alias wikilinks
If a note has aliases: [Quick Start] in its frontmatter, [[Quick Start]] now resolves to it correctly — the same way Obsidian does. Previously it would render as a broken link if the filename didn't match exactly.
Rich media embeds
The ![[filename]] syntax now handles every file type Obsidian supports:
Audio — ![[recording.mp3]] renders a native audio player.
Video — ![[demo.mp4]] renders a native video player.
PDF — ![[document.pdf]] renders an inline PDF viewer.
Canvas — ![[diagram.canvas]] renders your canvas as an interactive visual graph.
Notes — ![[Note Name]] embeds the full content of another note inline. Supports section embeds (![[Note#Heading]]) and resolves up to three levels deep. Read more about note transclusion →
Image sizing
The pipe syntax for image embeds now works correctly:
<img src="/api/assets/blog/photo.png" alt="photo" width="300" class="ob-embed-img" loading="lazy" /> → 300px wide
<img src="/api/assets/blog/photo.png" alt="photo" width="300" height="200" class="ob-embed-img" loading="lazy" /> → 300×200
 → alt text
Numeric pipe values set dimensions; anything non-numeric becomes alt text — matching Obsidian's own behaviour.
Frontmatter controls visibility
Two frontmatter fields now control how a file appears on your site:
unlisted: true # hidden from nav, index, and search — but accessible by URL
hidden: true # returns 404
publish: false # same as hidden: true
Previously these had to be toggled in the dashboard. Now syncing the file is enough.
These are mostly things that should have worked all along. If you notice anything in your vault that still doesn't render correctly, use the feedback button in your dashboard.