Skip to content

Releases: ARA-Labs/ara-cli

0.1.6 - 2026-07-13

Choose a tag to compare

@github-actions github-actions released this 13 Jul 18:07
069029b

Release Notes

Added

  • Pre-built release binaries and a Homebrew formula, driven by cargo-dist. A
    new tag-triggered release.yml cross-builds the ara binary for
    aarch64-apple-darwin (macOS Apple Silicon) and x86_64-unknown-linux-gnu
    (Linux x86_64), attaches tarballs + checksums to the GitHub Release, and
    generates a curl | sh installer and the ara.rb Homebrew formula. The
    formula targets the ARA-Labs/homebrew-tap tap, so users can
    brew install ARA-Labs/tap/ara. (Auto-push to the tap is deferred; the
    formula is committed by hand from the release asset for now.)
  • Resizable viewer panels: drag (or keyboard-resize) the divider between the
    map and detail panes to rebalance them. The gutter is a real WAI-ARIA
    window-splitter — focusable, Arrow/Home/End operable, and value-bearing —
    with per-mode split ratios (side-by-side vs. stacked), structural pane floors,
    a global cursor/selection lock while dragging, and double-click to reset. The
    ratio is in-memory only (resets on reload); on narrow (<800px) screens the
    layout still collapses to a single column with the gutter hidden.

Changed

  • Bump dependencies: tower-http 0.6 → 0.7 and notify-debouncer-full 0.5 →
    0.7 (ara-cli), and gloo-net 0.6 → 0.7 (ara-viewer). Regenerated the
    embedded viewer bundle so the shipped wasm matches the gloo-net bump.
    (#20, #21, #22)
  • Bump CI actions: docker/setup-buildx-action 3 → 4 and
    docker/build-push-action 6 → 7. (#18, #19)

Install ara-cli 0.1.6

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/ARA-Labs/ara-cli/releases/download/v0.1.6/ara-cli-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install ARA-Labs/tap/ara

Download ara-cli 0.1.6

File Platform Checksum
ara-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
ara-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 13 Jul 06:30
1ae9d73

Install ara-cli 0.1.5

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/ARA-Labs/ara-cli/releases/download/v0.1.5/ara-cli-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install ARA-Labs/tap/ara

Download ara-cli 0.1.5

File Platform Checksum
ara-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
ara-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

ara 0.1.3

Choose a tag to compare

@fenfenai fenfenai released this 12 Jul 23:51

[0.1.3] - 2026-07-12

Added

  • ara serve --hub --ara-root <dir>: read-only multi-ARA mode. Scans the root
    once at startup, parses each child directory into a per-ARA parse-once cache,
    and serves them under path-based /a/{id}/ routing (/a/{id}/api/manifest
    with ETag/304, /a/{id}/ viewer index, a root index of available ARAs). Hub
    reads are pure cache hits — no watcher, no reparse after startup. Ids are
    constrained to [A-Za-z0-9._-]+; broken ARAs and bad ids are logged and
    skipped, an unreadable root is fatal, and an empty root warns loudly. (#17)
  • --host <ip> flag for ara serve (default 127.0.0.1; set 0.0.0.0 in a
    container so the port is reachable from the host). (#17)
  • Multi-stage musl → distroless Dockerfile for the hub (viewer baked into the
    binary; no wasm toolchain in the image; cargo-chef dependency-layer cache)
    plus .dockerignore, a CI docker smoke-test job, and docs/deploy.md
    (Docker/compose, systemd, Caddy/nginx reverse-proxy compression, ops notes). (#17)

Changed

  • Viewer: resolves its manifest/live URLs relative to the page
    (api/manifest, api/live) instead of absolute paths, so the same bundle
    serves both local ara serve (page at /, unchanged behaviour) and the hub
    (per-ARA <base href="/a/{id}/">). (#17)

ara 0.1.2

Choose a tag to compare

@fenfenai fenfenai released this 11 Jul 23:57
c2ef628

[0.1.2] - 2026-07-11

Added

  • Viewer: Tree display mode — an alternate DOM indented tree-list rendering
    of the exploration graph, reproducing the published research-visualizer
    scaffold. Chosen with a graph | tree segmented toggle in the header (the
    SVG graph stays the default). Rows show a kind glyph, node id, ⇠ id
    dependency marker, and title; children nest with a spine; dead ends are struck
    through; isolated-subtree roots render in an .isobox; hovering a row
    highlights its dependencies. Drives the same selection + filter as the graph.
    (#7)
  • Viewer: Replay stepper in the toolbar (‹ / ▶ Replay⇄⏸ Pause / ›, /
    keys) that steps the selection through node order in both display modes, with
    a shared step i / N · shown / N steps readout. 1300 ms auto-play stops at
    the last node; the / keys are guarded so they don't hijack the search
    field. (#7)
  • Core: Node.isolated boolean manifest field (serde-default false, omitted
    from the wire form when false) marking the root of an isolated subtree; drives
    the tree mode's isolated-subtree box. Old manifests round-trip unchanged. (#7)

Changed

  • Viewer: node kind glyphs now use the published research-visualizer set —
    experiment ✦, decision →, dead_end ✗, insight !, other (question
    stays Q) — read from the single kind_meta source by both the SVG graph and
    the new tree-list. This visibly restyles the existing SVG graph's node glyphs.
    (#7)

ara 0.1.1

Choose a tag to compare

@fenfenai fenfenai released this 12 Jul 02:59

[0.1.1] - 2026-07-11

Added

  • Viewer: selectable layout modes for the map/detail panes via a segmented
    toggle in the header — Stack (map on top at full width, detail below; the
    new default, matching the wide exploration-DAG shape) and Split (map left,
    detail right; the previous side-by-side behaviour). Session-only; narrow
    viewports always stack. (#9)

Changed

  • Build: scripts/embed-viewer.sh is now the canonical way to regenerate the
    viewer bundle baked into ara-cli, and a new CI job (viewer-embed-fresh)
    runs --check to fail a PR when the ara-viewer frontend source changes without
    a matching regen — so ara serve can't silently ship a stale embedded UI. (#9)

Fixed

  • Viewer: detail-pane placeholder now reads "Select a step to see its details."
    instead of "…on the left." — the map sits on top in the default stack mode, so
    the directional copy was wrong. (#9)
  • Viewer: inactive layout-toggle label now uses --ink (~11.6:1) instead of
    --muted (~3.57:1), clearing the WCAG AA 4.5:1 contrast threshold for an
    interactive control label. (#9)
  • Viewer: the active layout-toggle segment no longer bolds its label, which was
    changing the label width and nudging the segments sideways on every toggle.
    (#9)

ara 0.1.0 — first published release

Choose a tag to compare

@EYH0602 EYH0602 released this 11 Jul 07:53
4acb73d

First published release of the ARA viewer runtime. ara validate + ara layout + ara serve with a live-reloading web viewer, published to crates.io.

Install

cargo install ara-cli

Gives the ara binary:

ara validate path/to/artifact     # parse + validate an ARA directory
ara layout   path/to/artifact --json
ara serve    path/to/artifact     # live-reloading web viewer at http://127.0.0.1:8080

Highlights

  • ara serve <dir> — axum server with the viewer embedded in the binary (zero-config; --assets <dist> to override), /api/manifest (parse-once cache, ETag/304), range-capable /api/figure/*, and a /api/live WebSocket. Editing the artifact reparses it (debounced) and refreshes the graph without losing pan/zoom or selection.
  • ara-core — panic-free serde-saphyr YAML parser → normalized Manifest, cycle detection, Markdown claim/binding resolution; deterministic layered DAG layout via dagre-dgl-rs.
  • Leptos CSR viewer — SVG DAG skinned to the published ARA visual language, drill-down detail pane, search/type/dead-end filters, sub-MB wasm.

Published crates

Full details in CHANGELOG.md.