obsidian-publish-customize

Inject styles and scripts into Obsidian Publish sites via publish.css and publish.js.

7|Updated Dec 17, 2025
One-click install
npx skills add https://github.com/nweii/agent-stuff --skill obsidian-publish-customize
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: obsidian-publish-customize
Source: https://github.com/nweii/agent-stuff/tree/main/skills/obsidian-publish-customize
Command: npx skills add https://github.com/nweii/agent-stuff --skill obsidian-publish-customize

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Customize an Obsidian Publish site by injecting styles and scripts through the vault root publish.css and publish.js to alter theming and rendered pages.

Core Features & Use Cases

  • Theming via Publish CSS variables to customize the site chrome, typography, and colors.
  • Scripting the rendered page with publish.js to inject widgets, frontmatter blocks, and navigation enhancements.
  • Dynamic behavior with MutationObserver for navigation-heavy edits and a post-processor API for per-note customization.

Quick Start

Edit your vault's publish.css and publish.js, push the changes to your Obsidian Publish site, then test and iterate in the browser console.

Frequently Asked Questions about obsidian-publish-customize

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I customize the theming on my Obsidian Publish site?

You can customize an Obsidian Publish site by injecting CSS variables into the vault root publish.css file to alter site chrome, typography, and colors. Push the changes to your Publish site to apply the new theming.

Can I add custom JavaScript widgets to Obsidian Publish pages?

Yes, you can script rendered Obsidian Publish pages using publish.js to inject widgets, frontmatter blocks, and navigation enhancements. Edit the vault root publish.js, push the changes, and test in the browser console.

Do I need a custom domain to use publish.css and publish.js for Obsidian Publish?

Yes, injecting styles and scripts through publish.css and publish.js requires an active Obsidian Publish subscription, a custom domain, and the ability to edit and push these files from your vault to work around undocumented limitations.

What is the best way to add dynamic navigation behavior to an Obsidian Publish site?

The best way to add dynamic behavior is using a MutationObserver in publish.js for navigation-heavy edits and a post-processor API for per-note customization, allowing you to alter rendered pages dynamically after Obsidian Publish loads them.

Why does my publish.css not update on my Obsidian Publish site?

Obsidian Publish site customization requires pushing publish.css and publish.js from your vault root to the active Publish site. If the files are not pushed correctly or the subscription is inactive, the injected styles and scripts will not render.

How do I work around undocumented Obsidian Publish limitations with a custom domain?

You can work around undocumented Obsidian Publish limitations by injecting custom styles and scripts through the vault root publish.css and publish.js files, extending client-side behavior and altering rendered pages on your custom domain.