Releases: kriswill/flake-explorer
Releases · kriswill/flake-explorer
Release list
v0.1.3
Fixed
- The file map no longer picks up
.nixfiles from nested repositories and
git worktrees (e.g. an untracked.claude/worktrees/*inside the flake
dir). Under lazy-trees (Determinate Nix) the flake "source" is the working
directory itself, so the extractor's walk saw untracked clutter; any
non-root directory carrying its own.gitis now skipped wholesale.
v0.1.2
Fixed
- npm installs (
bunx,npx,npm install) failed on every nix-touching
command: thenix evalexpression embedded the extract.nix path as a bare
Nix path literal, which cannot contain the@that scoped-package install
paths (node_modules/@kriswill/…) always carry — nor spaces. The path is
now passed as a quoted Nix string.
v0.1.1
Added
- Curated documentation under
docs/, published to the
Pages site at https://kris.net/flake-explorer/docs/ alongside the demo,
including a CI-generated TypeDoc API reference for the data contract
(src/schema.ts). --help/-hflag (andhelpcommand): usage on stdout, exit 0.
Unknown commands now report to stderr with exit 1.- Docs site: license notices for the bundled mermaid asset — the full
dependency closure ships asdocs/licenses.html, linked from every page
that loads the bundle. - Release workflow (
Release, manually dispatched with major/minor/patch):
bumpspackage.json(the single version source —package.nixreads it at
eval time), rolls this changelog, tagsvX.Y.Z, and publishes a GitHub
release with the section as notes. - README badges: CI status, latest release, documentation.
- npm publishing: the release workflow publishes
@kriswill/flake-explorer
via OIDC trusted publishing, sobunx @kriswill/flake-explorer serve .
works without cloning. - This changelog.
v0.1.0
Added
- Initial three-pane explorer: flake outputs & module hierarchy (left),
module detail with Configures/Declares and option provenance (center),
referenced files grouped by origin (right). extractcommand: manifest plus per-configuration options extraction to a
data directory, cached by flake narHash.servecommand: explorer UI with on-demand per-configuration extraction
andPOST /api/refreshre-scanning;--devwatchesapp/, rebuilds
in-memory, and live-reloads the browser over SSE.exportcommand: ONE standalone HTML file (data embedded) that works from
file://, any CDN, or GitHub Pages;--sources self|allcontrols embedded
source files. Pages workflow publishes this repo's own flake as a demo.- Tree-sitter Nix syntax highlighting with clickable reference links.
- Input provenance from
flake.lockwith url/rev linked to their web host. - File list as a folder tree with auto-reveal, filtering, and origin cards;
resizable panes; font-size control; About modal with license notices. - npm
bin/flake-explorer.mjslauncher.
Changed
- Schema cleanup: versioned blobs, dead serialized fields dropped,
config-name sanitization. - Shared cached extraction driver with flag validation.
- Adopted Biome (format, lint, ASI style) and treefmt-nix for Nix files.
Fixed
- Lazy-trees path attribution.
- Refresh race in the extraction driver.
- Nix timeouts no longer rely on AbortSignal identity.
- Output names containing dots round-trip in deep links.
Infrastructure
- CI guardrails: tests with a coverage ratchet (78% → 97% line coverage),
typecheck, Biome lint,nix flake check, Dependabot.