Skip to content

v1.8.1 - TUI OpenTUI/Solid.js Migration

Choose a tag to compare

@rohitg00 rohitg00 released this 01 Feb 17:33
· 175 commits to main since this release

SkillKit v1.8.1

🎨 TUI Framework Migration

This release completes a major rewrite of the Terminal UI from React/Ink to OpenTUI/Solid.js, delivering improved performance and a more reactive architecture.

✨ New Features

  • OpenTUI/Solid.js Framework: Complete TUI rewrite with reactive primitives
  • 20+ New Components: AnimatedText, Button, Breadcrumb, Clickable, CodeBlock, DetailPane, EmptyState, ErrorBoundary, FormField, HoverHighlight, SelectList, SplitPane, StatusIndicator, TabBar, and more
  • Service Layer: New modular service architecture for all screens
  • Windowed List Navigation: Lists now scroll to keep selection visible
  • Enhanced Error Handling: All async operations properly handle errors and show UI feedback

🔧 Improvements

  • Security: openUrl now uses execFile instead of exec to prevent command injection
  • Robustness: Terminal dimensions clamped to prevent negative values on small terminals
  • Render Handling: TUI renderer initialization is now properly awaited with error handling
  • Re-entrancy Guards: Prevent concurrent execution of async operations
  • Index Clamping: Selection indexes are reactively clamped when lists change

📦 Screens Migrated

All screens have been migrated to the new framework:

  • Home, Browse, Installed, Marketplace, Settings
  • Recommend, Translate, Context, Memory
  • Team, Plugins, Methodology, Plan
  • Workflow, Execute, History, Sync
  • Help, Mesh, Message

🛠 Technical Details

  • Framework: Solid.js with OpenTUI renderer
  • Type definitions: New solid-opentui.d.ts with full event handler support
  • Build: tsup with ES2022 target
  • Runtime: Requires Bun >=1.2.0 for TUI

📚 Links


Full Changelog: v1.8.0...v1.8.1