Jalad226 downloadsA PADD (Palette, Animation, Decoration, and Density) modifier for your themes.
A PADD (Palette, Animation, Decoration, and Density) modifier for your themes.
theme.css for a @themepadd directive and fetches the spec from the theme's GitHub release. No per-theme setup.settings.json. When a theme updates, the new spec comes with it.BRAT installs plugins directly from their GitHub repository and auto-updates them on each release.
Ctrl+P on Windows / Command+P on macOS) and run BRAT: Add a beta plugin for testing.https://github.com/Jalad25/theme-padd.To get future updates, run BRAT: Check for updates to all beta plugins from the command palette, or enable auto-update in BRAT's settings.
main.js, manifest.json, and styles.css from the latest release..obsidian/plugins/theme-padd/ if it does not already exist.Open Settings → Theme PADD (palette icon).
Installed themes that publish a settings.json appear under Themes. Click into one to see the controls its author exposed. Changes apply live for active themes.
Themes without a settings.json appear in a separate group at the bottom. You can still add your own settings to them.
Every theme, supported or not, has a Your customizations entry. This is where you author additional controls layered on top of the theme. They apply only while that theme is active.
Click Add custom settings to open the JSON editor. The schema you write is the same one theme authors use. See THEME_AUTHORING.md for the full reference. A copy-and-paste example is below.
At the top of the Theme PADD settings. Same JSON editor, same schema, but applied to the whole vault.
When Theme PADD applies your settings to the vault, layers stack in this order:
Later layers override earlier ones when keys collide.
Paste this into the Add custom settings editor (either per-theme or global) to add a body-font-size slider:
{
"schemaVersion": 1,
"settingItems": [
{
"type": "control",
"name": "Body font size",
"control": {
"type": "slider",
"id": "body-font-size",
"min": 12,
"max": 24,
"step": 1,
"defaultValue": 16,
"onChange": {
"action": "set-css-variable",
"name": "--font-text-size"
}
}
}
]
}
For the full schema (every control type, every action type, validation rules), see THEME_AUTHORING.md.
If a theme says it supports Theme PADD but something goes wrong, Theme PADD shows a clearly labeled error on that theme's entry. There's a Copy button for the details, useful if you want to file an issue with the theme author.
Each theme version's settings come from that release's settings.json asset. When a theme author publishes an update, Theme PADD fetches the new spec automatically. If you downgrade a theme to a version that never shipped one, you'll see a fetch error until you re-upgrade.
When you remove a theme from Obsidian, Theme PADD cleans up alongside it:
Global customizations are unaffected. If you're about to delete a theme but want to keep your customizations, copy the JSON out of the Edit customizations modal first.
See ROADMAP.md for current focus and planned features.
GNU Affero General Public License v3.0. See LICENSE for details.