Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Slate

Jay LeimerJay Leimer136 downloads

Slate: a dense, calm, monospace theme for Obsidian, based on the Slate design system

Add to Obsidian
Slate screenshot
  • Overview
  • Scorecard
  • Updates2

Slate icon

Slate

A dense, calm, keyboard-first theme for Obsidian.
One monospace typeface, square edges, hard offset shadows and a single ember accent.

Slate in dark mode: a note with lists, tasks and callouts

Slate is the Obsidian version of the Slate design system: the same tokens (colours, type, spacing, shadows), applied to Obsidian's own variables so core UI, notes and most plugins follow them. It has a light and a dark variant and follows Obsidian's Appearance → Base color scheme setting.

Install

From Obsidian: Settings → Appearance → Themes → Manage, search for Slate, then Install and use. Updates arrive through the same dialog.

By hand (for example in a vault without internet access): download theme.css and manifest.json from the latest release into a folder named Slate inside <your vault>/.obsidian/themes/, then pick Slate under Settings → Appearance → Themes.

Nothing is loaded from the network: the font is embedded in theme.css as a Latin subset (scripts/subset-fonts.py).

What it looks like

Light Dark
Live Preview Light editor Dark editor
Reading view Light reading view Dark reading view

The command palette with the chosen row in solid ember

The design

  • Type. JetBrains Mono, ligatures off, tabular figures in tables and counters. Weight, case and tracking do the work: table headers are small caps, tags and callout titles are lower case.
  • Colour. Warm greys, text at 4.5:1 or more in both variants. Ember (#e8823a) is the one brand colour. It fills the call to action and the chosen row, and is never used as text: links use a darker ember (accent-text) that keeps its contrast.
  • Status is shape, colour and word. Callouts take the Slate status tones: ok (tip, success), warn (warning, question), crit (danger, failure, bug), agent (example, abstract) and neutral for the rest.
  • Edges. Radius is 0 everywhere. Buttons and the command palette use hard offset shadows with no blur; the primary button sinks 2 px when pressed.
  • Focus. A 2 px solid ring, offset by 1 px, for keyboard users.
  • Motion. No added animation, and transitions are switched off under reduce motion.

The tokens live in src/01-tokens.css under the --sl- prefix, and src/02-variables.css maps them onto Obsidian's variables, so you can retune the theme from your own CSS snippet:

/* .obsidian/snippets/slate-tweaks.css */
body {
    --font-text-size: 15px;
}
.theme-dark {
    --sl-color-accent: #4aa3ff; /* a different accent, dark mode only */
}

Compatibility

Tested in a real Obsidian on 1.8.10 and the latest release (1.14), light and dark, desktop. manifest.json asks for 1.8.10 or newer. Plugins that draw their own UI usually pick the colours up through Obsidian's variables; if one does not, open an issue with a screenshot.

Development

npm install
npm run build        # builds theme.css from src/*.css and fonts/
npm run check        # theme.css is up to date; manifest and CSS rules
npm run screenshots  # drives a real Obsidian and writes test/screenshots/*.png

theme.css is generated: edit the files in src/, run npm run build and commit both. See CONTRIBUTING.md.

Support

Slate is free and open source. If you like it, you can buy me a coffee.

Credits and licence

  • The Slate design system's tokens and look.
  • JetBrains Mono, © The JetBrains Mono Project Authors, under the SIL Open Font License 1.1, embedded in theme.css as a Latin subset (scripts/subset-fonts.py).
  • Everything else: © Jay Leimer, under the PolyForm Noncommercial License 1.0.0. In short: free to use, copy and change for personal and other non-commercial purposes; commercial use, including selling the theme or bundling it in a paid product, needs the author's permission. This is source-available, not open source. JetBrains Mono keeps its own free licence (above).
HealthExcellent
ReviewSatisfactory
About
Apply Slate to get a dense, calm, keyboard-first Obsidian theme with JetBrains Mono, square edges, hard offset shadows, and a single ember accent. Keep a consistent token-based design across core UI, notes, and most plugins with light/dark variants, strong contrast, and minimal motion.
Details
Current version
0.1.1
Last updated
Last week
Created
Last week
Updates
2 releases
Downloads
136
License
OTHER
Report bugRequest featureReport theme
Sponsor
Buy Me a Coffee
Author
Jay LeimerJay Leimercodingjinxx
GitHubcodingjinxx
  1. Community
  2. Themes
  3. Slate

Related themes

Minimal screenshot

Minimal

Wasp screenshot

Wasp

GitHub Theme screenshot

GitHub Theme

Things screenshot

Things

Shimmering Focus screenshot

Shimmering Focus

Cupertino screenshot

Cupertino

Baseline screenshot

Baseline

Prism screenshot

Prism

Willemstad screenshot

Willemstad

Sodalite screenshot

Sodalite