This page renders every custom extension provided by Sarde in one place. It is a visual reference, not a tutorial. For usage details, see the individual extension pages in the sidebar.
Inline Extensions
Highlight
Use ==text== to highlight a word or phrase inline.
Spoiler
Use ||text|| to hide content until hovered or clicked. The answer is 42.
Keyboard Keys
Default: Ctrl+Shift+P | Small: Ctrl+S | Large: Ctrl+S
Wide keys: Space Enter Backspace
Combined: Space Tab
Special keys: Esc Tab ⇧ ⌘ ⌥ ⌃ ↑ ↓ ← → Delete
Copy Text
Install with go install github.com/getsarde/sarde@latest and configure at ~/.config/sarde.yaml.
Annotation
Highlight style: the virtual DOMAn in-memory representation of the real DOM tree, used for efficient diffing and minimal updates pattern enables fast UI updates.
Plain style: check the SSRServer-Side Rendering generates HTML on the server instead of the client configuration for production deployments.
Icons
Lucide (default):
Tabler:
Simple Icons:
Inline Math
Einstein's equation $E = mc^2$ and the quadratic formula $x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$.
Block Extensions
Asides
:::success
A success aside confirming that a step completed correctly.
:::
GitHub-Flavored Asides
Rich Content in Asides
Badges
NewDeprecatedRemovedBetav2.0.0PreviewOutline Badges
StableExperimentalBreakingBadge Sizes
SmallDefaultLargeBadge without Icon
Badge Group
Details
Click to expand
Hidden content with any markdown: lists, formatting, and code blocks.
site: title: "My Site"Expanded by default
This details block starts open.
Accordion
Default (exclusive, one open at a time):
What is Sarde?
A zero-config, Go-based static site generator.
How do I install it?
Run go install github.com/getsarde/sarde@latest to install.
Is it extensible?
Yes, with a plugin system offering four lifecycle hooks.
Independent (multiple open):
Item one
This item can stay open independently of the others.
Item two
So can this one.
Cards
Learn how to set up your first Sarde project in under five minutes.
Use variant="highlighted" for an accent border.
Use variant="subtle" for a transparent background with a dashed border.
Card Grid (auto columns)
Parallel rendering and incremental builds.
Drop Markdown files into content/ and go.
Four lifecycle hooks for plugins.
Template overlay resolution at every level.
Card Grid (fixed 3 columns)
URL routes with parameters and wildcards.
Go html/template with custom functions.
Extend every stage of the build pipeline.
Card Grid (stagger)
Parallel rendering keeps builds under a second.
Drop Markdown into content/ and get a production site.
Four lifecycle hooks for the build pipeline.
Override any template at any level.
Link Cards
Follow the step-by-step setup guide.
External Link Card
View the source code and contribute.
github.comLink Card with Image
A visual authoring environment powered by Tauri and Svelte.
github.comTab Behavior Override
This internal link opens in a new tab.
This external link stays in the same tab.
go.devLink Buttons
Primary Secondary Minimal Ghost OutlineButton Sizes
Small Default LargeIcon-Only Buttons
Block (Full Width)
Full Width ButtonCentered
Disabled
Disabled Primary Disabled SecondaryButton Group
Columns
One
First of three columns.
Two
Second of three columns.
Three
Third of three columns.
Steps
-
Install Sarde. Download the binary or install via your package manager.
-
Create a project. Run
sarde new my-siteto scaffold a new project. -
Add content. Drop Markdown files into the
content/directory. -
Start the dev server. Run
sarde devand openhttp://localhost:4727. -
Build for production. Run
sarde buildto generate the static site indist/.
Steps with Headings
Tabs
npm install -g sardepnpm add -g sardeyarn global add sardego install github.com/getsarde/sarde@latestTabs with Icons
console.log("Hello, world!");const greeting: string = "Hello, world!";console.log(greeting);print("Hello, world!")fmt.Println("Hello, world!")Code Group
package mainimport "fmt"func main() { fmt.Println("Hello from Go")}function main() { console.log("Hello from TypeScript");}def main(): print("Hello from Python")main()File Tree
-
my-site
-
content
-
docs
- getting-started.md
- configuration.md
- _index.md
-
blog
- 2025-01-01-hello-world.md
- _index.md
- _index.md
-
docs
-
themes
-
default
- layouts
- public
- ...
-
default
-
public
- images
- favicon.ico
- sarde.yamlSite configuration
- package.json
-
content
Figure
Gallery
Image Compare
Video
4:3 Aspect Ratio
Autoplay, Muted, Loop
Vimeo
Timeline
Major release: new engine, Goldmark extensions, Orama search, and the Tauri desktop app.
Added collection versioning, tabbed docs, and the announcements plugin.
Introduced the Python SDK, expanded i18n, and added content linting.
Improved cold start times by 40% and added focus mode.
Region-aware Realtime presence and the columns extension.
Timeline with Headings
Opened to a small group of design partners.
Public beta with production workloads.
Stable release with SLA guarantees.
Terminal
$ sarde new my-docs
Creating new project in ./my-docs...
Created content/
Created sarde.yaml
Installed default theme
Created content/_index.md
$ cd my-docs && sarde dev
Starting dev server...
Discovered 1 page
Built site in 12ms
http://localhost:4727Block Math
Mermaid Diagrams
Code Diff
- const config = loadConfig("config.json")+ const config = loadConfig("sarde.yaml") func buildSite(cfg Config) error {- pages, err := discover(cfg.ContentDir)+ pages, err := discoverParallel(cfg.ContentDir, cfg.Workers) if err != nil { return err } }Code Block Features
Titles, line numbers, and line annotations:
package mainimport "fmt"func greet(name string) string { return fmt.Sprintf("Hello, %s!", name)}func main() { greet("world") }func main() { greet("Sarde") }Focus and collapse:
export const config = { title: "My Site", description: "Built with Sarde", url: "https://example.com", theme: { preset: "ocean", dark: true, }, build: { minify: true, parallel: true, },};Terminal chrome (applied automatically for bash, sh, zsh, powershell, cmd):
sarde build --minifysarde build --minifyCombining Extensions
Extensions compose naturally. Here are some examples of nesting and mixing.
Full Configuration Example
site: title: "My Site"site: title: "My Site" description: "A comprehensive documentation site" url: "https://example.com" language: "en"build: minify: trueplugins: enabled: - search - seo - sitemap