Skip to content

v2.0.0

Choose a tag to compare

@cpaczek cpaczek released this 02 Apr 05:37
· 52 commits to main since this release

v2.0.0

Interactive Builder TUI

  • New split-panel builder UI powered by OpenTUI with live ASCII art preview that updates in real-time as you scroll through options
  • Left panel: Species, eyes, rarity, hat, shiny, and stat customization with bordered sections and focus indicators (cyan highlight + ▶ arrow)
  • Right panel: Live pet preview with rarity-colored sprite, trait details, and per-stat ASCII bar charts for peak/dump visualization
  • Keyboard navigation: Arrow keys scroll within a section, Tab/Enter advance to next, Shift+Tab goes back, Esc cancels
  • Confirmation step: After the last field, Enter/Y confirms, Esc/N goes back to edit
  • Disabled sections with inline help messages (e.g. "Common rarity pets don't wear hats. Change Rarity above to unlock hats.")
  • Small terminal support: Manual scroll with auto-scroll-to-focused-section when content overflows
  • Graceful fallback: Falls back to sequential @inquirer/prompts when Bun is unavailable, with a warning to install Bun

TypeScript Rewrite

  • Full TypeScript migration from JavaScript (lib/.mjs) to TypeScript (src/**/.ts)
  • Strict mode, path aliases (@/), ESLint + Prettier + Husky pre-commit hooks
  • 144 tests across 16 test files (33 new builder tests)
  • Vitest test framework with coverage support

Runtime Improvements

  • Auto re-exec from Node to Bun: When invoked via npx, the CLI detects Node and re-launches itself under Bun for the full builder experience
  • Worker path fix: Salt finder now resolves worker.ts (source) or worker.js (compiled) correctly
  • New dev scripts: pnpm dev (bun source), dev:build (compiled + bun), dev:node (compiled + node fallback)

Documentation

  • Updated README with builder screenshot, expanded Bun requirement explanation, and fallback behavior
  • Updated CONTRIBUTING with new project structure, dev scripts, runtime architecture, and test coverage
  • Updated HOW_IT_WORKS with interactive builder section and runtime detection explanation

Dependencies

  • Added @opentui/core (Bun-native terminal UI)
  • Kept @inquirer/prompts as Node fallback