Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 15 Feb 17:48
· 49 commits to main since this release

Summary

Kitfly v0.2.0 adds slides mode and a minimal plugin system—so you can ship fixed-aspect decks, add optional visuals/widgets, and still keep the core small and auditable.

Highlights

Slides mode (mode: slides)

Slides mode renders your content as a single-page, hash-routed deck (#slide-n) with keyboard navigation and a fixed aspect ratio.

# site.yaml
mode: slides
aspect: "16/9"

Authoring models:

  • One file per slide
  • One file, many slides using the explicit delimiter: --- slide ---

If you're starting fresh, kitfly init --template deck gives you a ready-to-edit slide project.

Plugins (optional, pinned, integrity-checked)

Plugins are small opt-in add-ons that inject CSS/JS. They are designed to stay minimal and predictable:

  • Pinned versions (name@x.y.z)
  • Integrity checked assets (sha256)
  • Optional mode allowlists (run only in slides, etc.)

Enable plugins via kitfly.plugins.yaml in your site root.

For details (including registry layout, checksums, and mode allowlists), see:

  • content/reference/plugins.md

callouts plugin

The callouts plugin transforms blockquotes starting with NOTE:/TIP:/WARNING:/INFO:/DANGER: into styled callout boxes. Works in both docs and slides modes.

slides-visuals and the ::: fence contract

The first "live slides" plugin, slides-visuals, introduces a strict ::: block syntax for widgets and deterministic figures.

Kitfly now validates ::: blocks when the plugin is enabled and fails fast with actionable errors. This is intentional: the contract avoids "looks like it worked" failures where a deck silently renders the wrong thing.

See: content/reference/plugins.md (Triple-colon fence contract).

Deterministic design primitives (shapes + figures)

v0.2.0 introduces core CSS primitives for slide-friendly visuals (block flow/grid plus shape modifiers) and documents a design catalog to standardize terminology:

  • Shapes (primitives): atomic building blocks
  • Figures: deterministic infographic patterns built from shapes

See: content/reference/design-catalog.md

Server management

New CLI commands for managing dev server instances:

  • kitfly servers — list running dev servers
  • kitfly stop <port|all> — stop dev server(s)
  • kitfly logs <port> — view daemon server logs (supports --follow)

Site versioning

Set version in site.yaml to display your site's version in the sidebar and footer across dev, build, and bundle outputs:

version: "1.0.0"    # explicit
version: auto        # read from VERSION file

Brand logo fallback

When no logo file is configured or the image can't load, Kitfly renders a CSS initial (first letter of the site title) instead of showing a broken image icon.

Bundle output separation

Bundle output now writes to bundles/ (separate from dist/) so static-deploy and single-file outputs don't interfere.

Breaking Changes

None for docs-mode sites.

If you enable slides-visuals, invalid ::: blocks are now treated as build errors (by design).

Deferred to v0.2.1

The v0.2.0 cycle intentionally shipped the minimum "slides + plugin" core and deferred additional live-slides capabilities:

  • slides-charts-lite
  • slides-refresh
  • slides-embed
  • Build-time ::: support via a marked extension hook (v0.2.0 uses a runtime DOM transform)