- Add app/theme.yml: colours (light/dark), semantic colours, callout
defaults, fonts (with bunny: provider support), font-size, line-height,
main-width, nav-width
- app/config.yml: add `theme: theme.yml` reference; remove font and
layout keys that now live in theme.yml
- index.html: add applyThemeYml() that reads the new theme.yml format
and derives all CSS custom properties (accent-rgb, nav-active-bg,
nav-hover-bg, table-header-bg, link-colour) from the 5 user keys per
mode; add --colour-info/warning/success/error CSS vars with hardcoded
defaults; add --line-height-body CSS var
- index.html: update loadFonts() to accept themeConfig, support
provider:name:weight format for Bunny Fonts and Google Fonts
- index.html: boot() fetches theme file named by config.theme, routes
to applyThemeYml() for new format or applyConfigTheme() for legacy;
falls back gracefully to hardcoded defaults when theme key is absent
https://claude.ai/code/session_015XtsgTMi8UtmgxEgb5Qt2c
- CLI_VERSION → 0.3.1, CLI_RELEASE_DATE → 10 May 2026
- Replace click.version_option with custom callback that prints version
+ release date, then fetches docs/banner/v{VERSION}.txt from GitHub
and prints it; falls back to a "no online information" message on 404
or network error
- Add versioning rule to CLAUDE.md
https://claude.ai/code/session_015XtsgTMi8UtmgxEgb5Qt2c
Topbar now shows two item types intermixed by sort order:
- Unsectioned pages grouped by sort century: lowest sort = top-level
link, others fold out in a dropdown beneath it
- Sections: appear as named triggers; pages fold out on hover/click;
hidden sections require click to expand, visible sections also open
on hover; draft sections excluded entirely
Desktop: hover or click to open dropdown, small ▾ caret indicates
nested items, parent link highlighted when a child page is active.
Mobile: slide-in panel with accordion expand/collapse per group,
+ / − toggle button on each group that has children.
https://claude.ai/code/session_013A4egzphocyto9bvZ76dxf
Tag names changed from posts-date-*/posts-datetime-* to posts-created-*.
Renderer updated to filter, sort, group, and display using the created
field from search.json. Page meta display also updated to drop date/datetime
fallbacks. Samplesite posts and pages updated to match.
https://claude.ai/code/session_013A4egzphocyto9bvZ76dxf
date and datetime were overlapping with created. Only created is now
read by the scanner and emitted in search.json; modified is also
included in search.json output alongside it.
https://claude.ai/code/session_013A4egzphocyto9bvZ76dxf
Adds the Apache 2.0 license file, contributor guidelines, and security
policy. CONTRIBUTING.md reflects the existing branching convention and
dev workflow. SECURITY.md scopes the policy to mdcms-specific concerns.
https://claude.ai/code/session_01NrVot7Af6ciWRs7VJthQ15
This guide provides detailed steps for releasing a new version of mdcms, including prerequisites, setup, version bumping, tagging, and monitoring the build process.
Updated project documentation for MD-CMS, including changes to the CLI tool description, repository layout, and version markers. Adjusted folder names and clarified local preview instructions.
Triggered on version tags (v*). Builds standalone binaries via PyInstaller
on Linux/macOS/Windows runners, wraps the Linux binary in a .deb via fpm,
and attaches all artifacts to a GitHub release.
https://claude.ai/code/session_01MqEqGhP1guGx5VuFsLaws2
- Replace interactive TUI with click-based subcommands:
register, delete, view, build
- build accepts NAME (registry), --path, or CWD for GitHub Actions use
- Switch to PyYAML for frontmatter and nav.yml parsing
- Add pyproject.toml with click + PyYAML deps and mdcms entry point
- Add v0.3 version marker to app/config.yml and app/index.html
- Registry moves to ~/.config/mdcms/sites.json (XDG-compliant)
- Project root is now the directory containing index.html (no website/ subdir)
- register auto-downloads template from GitHub if no site found
https://claude.ai/code/session_01MqEqGhP1guGx5VuFsLaws2