Commit graph

24 commits

Author SHA1 Message Date
Claude
a4031bc008
docs: remind Claude to fetch remote branches before assuming one doesn't exist
https://claude.ai/code/session_01SFMh7PDxJjvvo5dYbCCFFs
2026-05-21 16:41:45 +00:00
Claude
7b2d54da57
Update CLAUDE.md: document <title> patching in run_build 2026-05-19 08:38:19 +00:00
Claude
51cb68c4f9
Merge branch 'main' of http://127.0.0.1:45849/git/kbenestad/mdcms into development 2026-05-19 06:58:52 +00:00
Claude
d63fc0035f
Document unreleased.md as a living changelog for development
https://claude.ai/code/session_01EzU13EL8D5Ud2ngQUKDj9e
2026-05-19 06:58:41 +00:00
Claude
aa9ea34683
Enforce two-branch policy in CLAUDE.md: main + development only
Non-canonical branches must be deleted immediately after merging.

https://claude.ai/code/session_01R4b6mihSGtCUzyW4Sd5jzM
2026-05-19 06:22:06 +00:00
Claude
237fae111a
Add per-category line-height support
Nastaliq and other complex scripts need significantly more vertical
space than Latin text. A new `line-height` key on any category entry
in config.yml overrides --line-height-body for that category and
restores the theme default when switching away.

https://claude.ai/code/session_01LZVnq4wUgdv5oXFLcj6qXf
2026-05-19 06:11:40 +00:00
Claude
737049f19e
Add configurable nav section toggle icons
Two new top-level theme.yml keys — nav-section-expand-icon and
nav-section-collapse-icon — replace the hardcoded arrow_right/arrow_drop_down
used on collapsible nav sections. Defaults preserve existing behaviour.

Eight new icon SVGs added to app/assets/icons/:
  keyboard_arrow_right / keyboard_arrow_down     (chevrons)
  keyboard_double_arrow_right / keyboard_double_arrow_down
  expand_content / collapse_content              (corner arrows)
  add / minimize                                 (plus/minus)

All eight added to STANDARD_ICONS so fetch-deps bundles them correctly.
CLAUDE.md key reference and docs/claude-design.md updated with the full
icon catalogue, pairing guidance, and style notes for Claude Design.

https://claude.ai/code/session_01NQKywehSj8Ku4yKhwB4VNB
2026-05-18 15:08:59 +00:00
Claude
f4a41ed3ae
Add nav-sitename, nav-description, nav-toggle colour keys
Separates sidebar header colours from nav link colours. The three new keys
control the site name, site description, and dark/light toggle independently,
each cascading from the nearest nav variable (nav-sitename → nav-link,
nav-description and nav-toggle → nav-section-heading) so existing themes
are unaffected.

Enables Claude Design to fine-tune sidebar header legibility on saturated or
bold nav backgrounds without having to override the nav link colours, and vice
versa. CSS selectors and applyThemeYml() updated; app/theme.yml, CLAUDE.md,
and docs/claude-design.md updated with full key reference and pattern examples.

https://claude.ai/code/session_01NQKywehSj8Ku4yKhwB4VNB
2026-05-18 14:47:28 +00:00
Claude
f2bc729e40
Derive --divider via color-mix; add explicit divider key as escape hatch
--divider in both light and dark modes now auto-derives from the theme's
background and text colours using color-mix(in srgb, bg 85%, text), so
accent-coloured or custom-background themes get a correct divider without
any extra config. An explicit `divider` key in theme.yml overrides this
for the rare cases where exact control is needed.

docs/claude-design.md and CLAUDE.md updated accordingly.

https://claude.ai/code/session_01NQKywehSj8Ku4yKhwB4VNB
2026-05-18 11:09:06 +00:00
Claude
923626855f
Add nav-link colour keys and per-mode semantic colours to theme system
- New theme.yml keys: nav-link, nav-link-active, nav-section-heading (per
  light/dark mode). Fixes themes where nav-background equals accent, which
  made active nav links invisible against their own background.
- New colours-semantic-dark block overrides callout semantic colours in dark
  mode only, preventing washed-out callout borders and backgrounds on dark
  page backgrounds.
- CSS: nav item and section heading selectors now use the new CSS variables
  with graceful fallbacks to existing defaults — no breakage for themes that
  don't set the new keys.
- app/theme.yml starter updated with new keys (commented examples) and
  sensible colours-semantic-dark defaults.
- CLAUDE.md updated with full key reference table and guidance on when to
  use nav colour overrides.
- docs/claude-design.md: new authoring guide for Claude Design covering
  contrast rules, nav pattern examples, and a pre-publish checklist.

https://claude.ai/code/session_01NQKywehSj8Ku4yKhwB4VNB
2026-05-18 10:37:35 +00:00
Claude
d72a7c0d7f
Update CLAUDE.md for v0.4: branching convention, renderer features, known limitations
- Branching: main=release, development=default dev branch, no per-conversation branches
- Add v0.4 renderer features section (callouts, TOC, theme, icons, PWA, fetch-deps)
- Note topbar nav is broken — always use sidebar
- Update version markers to v0.4 throughout
- Add note that tag pushes must be done locally (cloud env blocks them)

https://claude.ai/code/session_01UP8Wo2CKPNhvvTkzX48CWF
2026-05-18 07:09:07 +00:00
Claude
a9e48ffee4
Merge remote-tracking branch 'origin/main' into claude/pwa-phase7
# Conflicts:
#	app/pages/home.md
#	mdcms.py
#	pyproject.toml
#	test_phase.py
2026-05-17 19:23:31 +00:00
Claude
92615fad1c
v0.4 Phase 7: PWA support + bump to 0.3.8
- Add generate_pwa(): builds manifest.json (name, short_name, theme_color,
  standalone display, favicon icon) and service-worker.js with a
  cache-first strategy; cache name is versioned by a hash of the precache
  file list so new builds automatically invalidate old caches; precache
  list covers index.html, config.yml, nav.yml, search.json, theme file,
  and all pages/posts/assets
- Call generate_pwa() from run_build() when pwa: yes/true in config.yml
- index.html: add <link rel="manifest"> and SW registration script in
  <head>; both silently no-op when the generated files are absent
- index.html boot(): write offline-message from config to localStorage
  on every load so the message survives cache eviction
- index.html navigateTo(): show localStorage offline message when a page
  fetch fails instead of the generic not-found message
- Update CLAUDE.md with PWA config key reference

https://claude.ai/code/session_015XtsgTMi8UtmgxEgb5Qt2c
2026-05-17 19:10:19 +00:00
Claude
9b7639cc62
v0.4 Phase 6: fetch-deps command for offline/local dependency mode
- Add _http_get() general HTTP helper (SSL via certifi, 30s timeout)
- Add CDN_DEPS table: 6 jsDelivr assets (js-yaml, marked, fuse.js,
  highlight.js, 2x highlight CSS)
- Add _fetch_bunny_fonts(): reads theme.yml font-body/heading/code keys,
  fetches CSS from fonts.bunny.net, downloads woff2 files to assets/fonts/,
  rewrites CSS to use relative local paths, writes per-font CSS file
- Add _patch_index_html(): replaces CDN URLs with local vendor paths,
  injects <link data-mdcms-fonts> tags for locally downloaded fonts
- Add fetch-deps CLI command: downloads vendors, fetches fonts if theme.yml
  present, patches index.html — site makes no external network requests
- index.html loadFonts(): skip if data-mdcms-fonts link already present
  (set by patched index.html after fetch-deps)
- Update CLAUDE.md CLI command table with fetch-deps entries

https://claude.ai/code/session_015XtsgTMi8UtmgxEgb5Qt2c
2026-05-17 19:06:31 +00:00
7edc7ab339
Merge pull request #12 from kbenestad/claude/config-keys-overview-e3lj1
Claude/config keys overview e3lj1
2026-05-16 22:45:12 +07:00
a2822a6458
Merge pull request #11 from kbenestad/claude/linux-install-docs-cwQsb
Bump to v0.3.2 and enhance version command output
2026-05-16 22:12:55 +07:00
Claude
ce6f9ec09f
Bump pyproject.toml to 0.3.1, update versioning rule in CLAUDE.md
https://claude.ai/code/session_015XtsgTMi8UtmgxEgb5Qt2c
2026-05-16 15:07:44 +00:00
Claude
b1fc97a024
Bump CLI to v0.3.1, add banner fetch to --version
- 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
2026-05-16 15:05:34 +00:00
ea039c1d78 Update CLAUDE.md 2026-05-16 21:23:02 +07:00
Claude
5e4612c01d
Update post listing tags to use created field throughout
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
2026-05-09 13:41:00 +00:00
Claude
a6eb3119e0
Remove date and datetime frontmatter fields, consolidate to created
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
2026-05-09 13:37:36 +00:00
997ef27c5a Update CLAUDE.md: certifi dep, Node 24 workflow, branching convention 2026-05-09 00:11:00 +07:00
8a253e420e
Revise CLAUDE.md for project updates and clarity
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.
2026-05-08 23:30:05 +07:00
Claude
c0d84f8d1f
Add CLAUDE.md with codebase documentation for AI assistants
Documents the two-part architecture (mdcms.py CLI + index.html renderer),
menu option reference, content structure, frontmatter fields, category system,
nav.yml behaviour, dynamic post tags, known limitations, and key
implementation quirks (non-general YAML parsers, category code validation).

https://claude.ai/code/session_018gathVoTZhBFDJVp1mVaTc
2026-04-27 04:27:24 +00:00