Frank84 downloadsSyntax coloring for Markdown fenced code, with 15 theme families and optional backgrounds, line numbers, and editor wrapping.
Make code blocks look the way you like.
Choose a syntax color palette for Markdown code blocks without changing the rest of your Obsidian theme. Your notes, app colors, and other parts of Obsidian keep their usual look.
Light and dark appearances with different code palettes.
The settings page lets you choose palettes and optional code-block features.
These are genuine screenshots from an isolated Obsidian test vault, captured with the v0.5.2 development build before the plugin was renamed from Atom One Fenced Syntax. The settings screenshot still shows that earlier name; the code colors and controls shown are real.
Obsidian's theme controls the whole app. Syntax Palette gives Markdown fenced code blocks their own color choices, so you can keep your favorite Obsidian theme and choose code colors that suit you.
The palette applies inside fenced code blocks. It does not recolor regular text or inline code, and it never edits your Markdown content. An optional setting can also change the fenced block's background.
Pick from 39 color variants across 15 theme families, including GitHub, Atom One, Catppuccin, Tokyo Night, Ayu, Dracula, Nord, and more. Choose a light palette and a dark palette separately, so each follows the matching Obsidian appearance.
You can also:
Syntax coloring is available for common languages including Python, JavaScript and TypeScript, JSON, Bash, HTML, and CSS. Unsupported or untagged code blocks keep Obsidian's own syntax colors.
Once Syntax Palette is installed:
Changes apply immediately and are saved for your next Obsidian session.
Check the GitHub releases and Obsidian Community plugins for the current publication status. This source build's experimental mobile support has not yet been validated on mobile devices.
To install a published release manually, download main.js, manifest.json, and styles.css from the GitHub release. Put all three files in your vault's .obsidian/plugins/syntax-palette/ folder, reload Obsidian, and enable Syntax Palette under Settings → Community plugins. These three files contain everything the plugin needs; no additional WASM file is required.
For a local source build, use those same three files from plugin/syntax-palette/. See the installation notes.
The plugin source is in plugin-src/; bundled theme data, source details, and third-party license texts are in sources/. The build embeds the Oniguruma WASM payload into main.js, so the Community Plugins file set does not need a separate runtime asset. Full third-party notices ship in both main.js and THIRD-PARTY-NOTICES.txt. See theme provenance for theme credits and licensing, and development guide for the development and testing notes.
To build from source:
npm ci
npm run verify
npm run build
npm run package
npm run verify-build
Public author: Frank. This project credit does not establish copyright ownership of historical code or third-party resources.
Syntax Palette's own project code is offered under the Apache License 2.0. Bundled themes, grammar files, parser-derived code, and runtime components keep their original licenses; see THIRD-PARTY-NOTICES.txt for the notices and full license texts. The theme snapshots and their exact versions are documented in THEME-PROVENANCE.md.
Before contributing, please open an issue to discuss the change. See LICENSE-AUDIT.md and RELEASE-AUDIT.md for the current owner-review items.