A minimalist terminal-style Ghost theme with Nord/Obsidian dark and warm paper light modes.
- 🌙 Dark (Nord/Obsidian) + ☀️ Light (warm paper) themes with animated toggle
JetBrains Monotypography throughout- Solarized Dark IDE-style code blocks with language detection + copy button
- Particle burst animation on theme switch
- Zero JS dependencies — vanilla ES5
- Responsive, accessible markup (ARIA labels, focus-visible, semantic HTML)
- Scoped CSS classes (
kl-*) to avoid Ghost content collisions - Ghost v5 / v6 compatible
- Download
katpadi-log.zip - In Ghost Admin → Settings → Design → Change theme → Upload theme
- Select the zip file and click Activate
After activating the theme, configure these in Settings → General:
| Setting | Recommended value |
|---|---|
| Publication name | ~/katpadi.log |
| Publication description | Your tagline (shown after # in header) |
| Navigation | Add your nav links (e.g. home, whoami, notes, projects) |
| Secondary Navigation | Links shown in the footer |
katpadi-log/
├── assets/
│ ├── css/screen.css All theme styles
│ └── js/main.js Theme toggle, particles, code blocks
├── partials/
│ ├── header.hbs Site header
│ ├── footer.hbs Site footer
│ ├── post-card.hbs Post list item
│ └── pagination.hbs Custom pagination HTML
├── default.hbs Base layout
├── index.hbs Post list (homepage)
├── post.hbs Single post
├── page.hbs Static page
├── tag.hbs Tag archive
├── author.hbs Author archive
├── error.hbs Error pages (404, 500)
├── package.json Theme manifest
├── LICENSE MIT
└── README.md This file
Ghost renders ```lang ``` fenced code blocks as <pre><code class="language-lang">. The theme's JS automatically wraps these with a Solarized Dark IDE chrome showing the language label and a copy button.
The 🌙 / ☀️ button in the header saves preference to localStorage. The chosen theme is applied before first paint (inline script in <head>) to prevent flash of unstyled content.
To test locally with GScan:
npm install -g gscan
gscan /path/to/katpadi-logMIT © katpadi