Skip to content
LexBuild
On this page

Changelog

LexBuild follows Keep a Changelog formatting and Conventional Commits for commit messages. All published packages use lockstep versioning via Changesets.

For the complete changelog, see CHANGELOG.md on GitHub.

Recent Releases

1.26.0

  • Unified update-script flag scheme. ./scripts/update.sh (no args) now updates all sources incrementally from each source’s last checkpoint. Source restriction via --source; source-scoping flags (--titles, --days, --from, --to) live at the top level. Old prefixes (--ecfr-titles, --fr-days, --usc-force, etc.) are removed and print migration hints
  • New --skip-search, --dry-run, -v / --verbose, and consistent --force semantics across all four scripts
  • New FR checkpoint at downloads/fr/.fr-state.json ({ lastRun, lastDate }). Default update-fr.sh resumes from lastDate. Missing checkpoint errors with a hint requiring --from or --days. Backfill runs no longer regress the cursor (write max(checkpoint, DATE_TO))
  • eCFR/USC bootstrap (missing checkpoint) now logs explicitly and runs a full first-run automatically
  • Fixed: --verbose / -v on the update scripts now actually works — sub-scripts accept the flag and pass --verbose through to their convert-* CLI step (previously exited 1 with “Unknown option”)
  • Fixed: default ./scripts/update.sh no longer crashes on macOS bash 3.2 + set -u; bare value-taking flags now print a friendly error instead of crashing
  • Security: patched transitive protobufjs (critical, RCE), postcss, and dompurify via pnpm.overrides

1.17.2

  • Added Data API (apps/api/) — Hono-based REST API serving U.S. legal content from SQLite with Meilisearch search proxy
  • Document retrieval endpoints for USC, CFR, and FR with content negotiation (JSON/Markdown/plaintext), field selection, and ETag caching
  • Paginated collection listings with multi-field filtering, sorting, and cursor-based pagination
  • Hierarchy browsing endpoints for USC/CFR titles and FR years/months
  • Full-text search with faceted filtering and result highlighting
  • API key authentication with tiered rate limiting
  • CLI commands: lexbuild api-key create|list|revoke|update
  • OpenAPI 3.1 spec with Scalar API reference UI

1.17.0

  • Docker-based Meilisearch search index deployment (--search-docker) — indexes locally, transfers pre-built data to VPS
  • Incremental source indexing (--search-docker --source fr)
  • Docker volume seeding from VPS (--search-docker-seed)
  • FR content support in the search pipeline

1.16.0

  • enrich-fr CLI command — fetches metadata from the FederalRegister.gov API and patches YAML frontmatter
  • Per-source search index checkpoints replacing global checkpoint
  • FR FrontmatterPanel displays Action and CFR References fields

1.15.2

  • Fixed sidebar collapse bug where USC/eCFR titles could not be collapsed after auto-expand
  • Fixed sidebar error handling to show “Failed to load” with retry instead of empty state
  • Updated homepage sample output and CLI Quick Start
  • Added planned packages (PLAW, Bills, Municipal Code) to homepage

1.15.0

  • Federal Register (@lexbuild/fr) — new source package for FR XML conversion
  • download-fr and convert-fr CLI commands with govinfo bulk and API downloaders
  • Date-based browsing at /fr/{YYYY}/{MM}/{document_number}
  • FR sidebar with year/month navigation tree
  • FR-specific FrontmatterPanel fields (agencies, docket IDs, CFR references)
  • Search index expanded to include FR documents (~770k documents)

1.14.0

  • eCFR (@lexbuild/ecfr) — source package for Code of Federal Regulations
  • download-ecfr and convert-ecfr CLI commands
  • eCFR browsing at /ecfr/ with title/chapter/part/section hierarchy
  • Part-level granularity output (-g part)

1.13.0

  • Full-text search powered by Meilisearch
  • SearchDialog component with Cmd+K shortcut
  • Meilisearch indexing scripts for batch and incremental updates