Changelog

Pinned versions stay available forever at /vX.Y.Z/.

v3.13.0
Charts v4 — seven more forms
  • Stacked area and step lines: skLine({stacked: true}) now lays each band on the one below instead of overlapping it, and {step: true} draws state changes as square steps
  • 100% stacked bars: skBar({stacked: true, normalize: true}) for share-of-total across categories
  • skMatrix — an x/y heatmap for arbitrary rows and columns (kills by zone, weapon by player), rendered as a real table so every number stays readable without colour
  • skHistogram — bins raw values and plots the distribution, with the bin range in each tooltip
  • skBullet — actual against target with qualitative bands, the honest replacement for a gauge on a KPI tile
  • skWaterfall — running balance, rises green and falls red with connectors and a total bar
  • All four new renderers have declarative data-sk-* forms, and the chart file still ships zero dependencies
v3.12.1
Gaming pack hardening
  • Hotbar: no longer swallows digits typed into a nested input or cancels Ctrl/Cmd shortcuts, activates non-button slots with Enter and Space, and picks up slots added after init instead of going inert
  • Match clock: an empty or unparseable value now stays blank instead of rendering 0:00 and firing sk-countdown-end on load; a clock moved between containers revives on the next skScan(); data-sk-up with data-sk-to counts elapsed time since that timestamp
  • Killfeed: a row expiring under the pointer no longer re-arms forever after its feed is removed (a timer and a detached DOM tree leaked per row); each row now announces one clean sentence instead of fused fragments; a hostile-length player name is clipped rather than painted over the page
  • Health bar updates in place, so the width transition the CSS declares actually runs
  • data-sk-ping and data-sk-trend carry a role, so aria-label is legal on them — data-sk-quiet was a serious axe violation; the trend chip no longer rewrites author class names that merely contain its prefix
  • Rank badges moved onto theme tokens; the metallics measured 1.4–3.1:1 on light surfaces and now clear WCAG AA in all nine themes
  • Five icons redrawn for legibility at 16px: melee, defuse, clutch, reload, battle-net
v3.12.0
Gaming & killfeed pack
  • 128 new icons (512 → 640): weapons and combat hardware, HUD and killfeed markers, gaming platforms and peripherals, esports and progression (gallery)
  • Six new behaviors: data-sk-killfeed (rolling event feed with skKillfeed().push(), row caps, timed expiry that pauses on hover), data-sk-hp (health + armor bar), data-sk-ping (latency signal bars), data-sk-countdown (match clock, counts down or up), data-sk-trend (delta chip with invertible direction), data-sk-hotbar (loadout strip driven by the number and arrow keys)
  • Four new chart types in skynet-charts.js: skBar (grouped, stacked or horizontal), skDonut, skRadar (player stat profiles) and skScatter — each with a declarative data-sk-* form
  • Multi-series charts now step through the palette in a colour-blind-safer order — amber and red are no longer adjacent, which they were for any chart with four or more series
  • New styles: .sk-hud heads-up panels, .sk-rank-* tier badges, .sk-team-* tints, hotbar slots, health and ping meters
  • New example page: a live match dashboard — killfeed, scoreboard, HUD readouts and all four new charts
v3.11.0
Interaction pack
  • Nine new declarative behaviors: data-sk-rating (star input with keyboard + hidden form field), data-sk-tree (collapsible tree from a nested list), data-sk-swipe (swipe-to-reveal row actions, touch and mouse), data-sk-infinite (sentinel firing sk-more), data-sk-share (native share with copy fallback), data-sk-peek (password visibility toggle), data-sk-fullscreen, data-sk-progress-read (reading-progress bar), data-sk-offline (connection banner)
  • .sk-marquee pure-CSS logo marquee — masked edges, hover pause, --sk-marquee-duration speed control, reduced-motion aware
  • All wired into skScan() for dynamically added markup, documented in LLM.md, and demoed on the components page
v3.10.0
Responsive best-practices guide
  • New Best practices page: seven years (2019–2026) of device evolution distilled — real viewport sizes for phones, foldables, tablets and desktops, breakpoints, touch-target standards (WCAG 2.2 / Apple / Material), safe areas, svh/dvh, media rules, Core Web Vitals budgets and a testing matrix, each mapped to the Skynet UI feature that implements it
  • The same guide over MCP: new get_best_practices tool (full guide or one section) and skynetui://best-practices resource; markdown source at /best-practices.md
v3.9.0
512 icons
  • The mega icon wave: 192 → 512 stroke icons in skynet-icons.js — weather, phones, media & AV, devices, files & folders, commerce & currencies, transport, nature, food, science, buildings, tools, security, editor marks, math symbols, faces and a full set of circle-, square- and off-variants (gallery)
  • Still one optional file (~55 KB min); the MCP list_icons/get_icon tools, the gallery and the LLM.md name list pick every new name up automatically
v3.8.0
192 icons
  • Icon set grows again: 128 → 192 stroke icons in skynet-icons.js — text formatting, devices, media transport, corners & rotation arrows, squares, shapes, off-state variants and more (gallery)
  • Still one optional ~19 KB file; the MCP list_icons/get_icon tools and the gallery pick the new names up automatically
v3.7.0
Forms, flows & micro-charts
  • data-sk-wizard multi-step form wizard: progress trail from your legends, Back/Next, per-step required-field validation, sk-wizard-done event
  • Input meters: data-sk-strength password meter, data-sk-count live character counter, data-sk-autogrow growing textareas (now red past the limit)
  • data-sk-compare before/after slider (drag + keyboard) and data-sk-kanban boards — cards drag between columns with live counts
  • skynet-charts.js: skSpark inline SVG sparklines and skGauge radial gauges, both declarative (data-sk-spark, data-sk-gauge)
  • Icon set doubled: 64 → 128 stroke icons in skynet-icons.js — circles, git, media, commerce, charts, maps and more (gallery)
v3.6.1
Navbar fit + MCP page
  • .sk-navbar now fits every width: between the mobile burger and full desktop, overflowing links scroll on one row (hidden scrollbar) instead of wrapping or clipping; brand and end-slot no longer shrink
  • New MCP page with its own navbar tab — connect instructions for four clients, the full 14-tool reference, prompts, resources, and a live curl example
v3.6.0
Dashboards & DX
  • skynet-charts.js: skLine line/area charts (multi-series, smooth, themed SVG) + skHeatmap contribution heatmap; declarative data-sk-line
  • data-sk-confirm, data-sk-hotkey, data-sk-countup, data-sk-timeago, data-sk-toast-pos — common app behaviors with zero custom JS
  • Exclusive accordion groups via the native name attribute
  • Editor IntelliSense files (VS Code custom data + snippets) generated from the live inventory, shipped in npm
v3.5.0
MCP v4 — the agent toolbox
  • New MCP tools at skynetui.com/mcp: convert_tailwind (server-side mechanical conversion), get_pattern (copy-paste sections), list_icons/get_icon (inline SVG), search_classes, check_contrast (WCAG)
  • get_template serves all nine starter pages (any theme) and make_theme auto-derives a full custom theme from one hex with AA-guarded contrast; get_version for orientation
  • MCP prompts (build_page, convert_tailwind_page, custom_theme) and new resources (class inventory, all nine patterns, starter templates, the email kit)
v3.4.2
Auto-updating by default
  • The scaffolder, docs, and CDN snippets now default to the auto-updating latest URLs — every new site picks up components and fixes as they ship
  • Pinned /vX.Y.Z/ URLs (immutable, with SRI) remain the documented opt-in for frozen production builds
v3.4.1
Console tag
  • A one-line branded console notice on load; silence it with data-sk-quiet on <html> or window.SKYNET_QUIET = true
  • Scaffolder version sync + Node 24 CI runners (from the same release branch)
v3.4.0
Arbitrary values — Tailwind bracket syntax at runtime
  • bg-[#1da1f2], w-[137px], hover:bg-[#0f8ecf], md:grid-cols-[1fr_auto], -mt-[3px] — generated at runtime, no build step, dynamic markup included
  • ~50 property prefixes, breakpoint + state variants, negatives, gradient stops, var(--x) values
  • skynet-ui check, convert, and the MCP validate_markup tool accept supported bracket classes and flag unsupported ones
v3.3.0
Icons, tooling, web components, and the patterns gallery
  • 64 stroke icons (skynet-icons.js) with gallery; experimental web components (skynet-elements.js)
  • npx skynet-ui check markup validator (+ MCP validate_markup) and npx skynet-ui convert Tailwind converter
  • Patterns gallery, browsable docs, framework recipes, HTML email kit
  • View transitions (data-sk-transition); five new scaffold templates (blog, docs, portfolio, admin, saas)
  • CI: axe-core accessibility gate + advisory visual regression; bare links now underlined (WCAG 1.4.1)
v3.2.0
Tailwind parity, forms round-out, virtual scroll, and agent chat
  • Tailwind parity pack: hover/focus/group/peer state variants, transforms, filters + backdrop blur, semantic gradients, animations, ring, xl/2xl breakpoints, negative + logical (RTL) spacing
  • Multi-select combobox, OTP input, file dropzone, input masks, calendar month view
  • Drag-to-reorder + kanban groups, split panes, masonry, skVirtual virtual scroll, sticky table column
  • AI kit 2: skChat.streamAsync (async iterables / fetch streams → live markdown), tool-call & thinking bubbles, message actions, sk-prompt input, skDiff
  • Site: /compare, slim llms.txt + full llms-full.txt
v3.1.0
Markdown, charts, theme builder v2, CI, and the scaffolder
  • skMarkdown zero-dep markdown renderer + skHighlight syntax highlighting + skChat append/stream/typing API
  • Pure-CSS charts: bar rows, sparklines, conic donut, legend
  • RTL support (dir="rtl") and skLocale() string overrides
  • Theme builder v2: presets, every variable, WCAG contrast checks, import/export/share URLs; new playground
  • MCP v2 (search_reference, get_theme_css, resources), CI smoke tests, npm provenance, npm create skynet-ui, favicon + social cards
v3.0.0 — “The AI App Kit”
Chat kit, prose, MCP server, and 15+ new components
  • sk-prose typography for rendered markdown / LLM output; chat kit (bubbles, typing dots, prompt bar) + skTypewriter
  • Combobox, date picker, dual-handle range, number stepper, star rating, banner, lightbox, onboarding tour (skTour)
  • Tables: row selection + bulk bar, CSV export, sticky headers, stat deltas
  • A11y: focus trap in overlays, ARIA wiring, contrast theme (9th), data-theme="auto", compact density, print styles
  • MCP server at /mcp; minified files + SRI hashes per release; examples gallery, theme builder, this changelog
v2.1.0
Tag input, tree view, context menus, table pagination

Plus the mobile dropdown-overflow fix and cache-busted deploys with visible build stamps.

v2.0.0
Tailwind-compat utility layer + LLM-first landing

~170 Tailwind-named utilities with sm:/md:/lg: variants, the Tailwind conversion guide in llms.txt, and skynetui.com built around LLM prompts.

v1.5.0
Four new themes

Forest and dusk (dark family), sky and rose (light family) — eight built-ins.

v1.4.0
Midnight & paper themes, form validation, skPrompt

Theme picker with persistence, autogrow textareas, character counters, scroll reveal, carousel autoplay.

v1.3.0
Command palette, popovers, carousel, toast actions

Ctrl+K palette with keyboard nav; themed native date inputs via color-scheme.

v1.2.0
Drawers, stepper, timeline, sortable/filterable tables

Plus skConfirm, segmented controls, scrollspy, and avatar groups.

v1.1.0
11 new components + theme toggle

Breadcrumbs, pagination, accordion, tooltips, skeletons, chips, hero, footer, and more.

v1.0.0
Initial release

The original two-file dark-first kit: 17 component families, utilities, light theme.