Skip to content

v1.0.1 — 100% MoonBit Rewrite

Choose a tag to compare

@kazuph kazuph released this 17 Mar 06:19
· 181 commits to main since this release
dbdbc0c

🎉 reviw v1.0.1 — Full MoonBit Rewrite

reviw is now 100% MoonBit — zero hand-written JavaScript in the repository.

✨ Highlights

  • Complete MoonBit rewrite: All 10,800+ lines of hand-written JavaScript (cli.cjs) have been replaced with MoonBit source code compiled to JavaScript
  • Feature parity: All v0.x features preserved — CSV/TSV/Markdown/Git diff viewing, comments, media sidebar, mermaid diagrams, theme toggle, and more
  • Table comment position fix: Clicking a table cell now correctly identifies the row AND column (was always reporting col:0)
  • Settings UI improvements: Gear/close button positioning, popup design, video label cleanup
  • Dynamic version: reviw --version reads from package.json instead of hardcoding

📦 Install

npm install -g reviw@1.0.1

🏗️ Architecture

v2/src/**/*.mbt  →  moon build --target js --release  →  dist/server/server.js + dist/ui/ui.js
  • Server: MoonBit → Node.js HTTP server with static file serving, Range requests, file watching
  • UI: MoonBit → Browser DOM manipulation, comment system, media viewers

🐛 Bug Fixes

  • Table cell click now returns correct column index (1-indexed, col=0 reserved for line comments)
  • Settings panel popup positioning and design improvements
  • Dynamic version reading from package.json (walks up directory tree)

📋 Full Changelog

v0.19.0...v1.0.1