Skip to content

Add Strata native macOS hex editor#1

Merged
ConnorHowell merged 1 commit intomainfrom
ConnorHowell/strata-hex-editor
Mar 31, 2026
Merged

Add Strata native macOS hex editor#1
ConnorHowell merged 1 commit intomainfrom
ConnorHowell/strata-hex-editor

Conversation

@ConnorHowell
Copy link
Copy Markdown
Owner

Summary

  • Complete native macOS hex editor built in Swift/AppKit targeting macOS 13+, visually inspired by HxD
  • NIB-free programmatic UI with piece table edit engine, viewport-culled Core Graphics rendering, and memory-mapped I/O for large file support
  • Multi-tab sessions, Data Inspector sidebar with LE/BE and decimal/hex toggle, HxD-style tabbed Find/Replace dialog (text/hex/integer/float search)
  • Includes Myers diff engine, checksum panel (CRC-16/32, MD5, SHA-1, SHA-256), Intel HEX and S-Record import/export, drag-and-drop file support
  • 77 unit tests covering PieceTable, DiffEngine, ChecksumEngine, IntelHex, and SRecord plus 7 UI tests

Test plan

  • make build compiles without errors
  • make test passes all 77 unit tests and 7 UI tests
  • make lint passes SwiftLint checks
  • Open a binary file and verify hex grid rendering with alternating byte colors
  • Test mouse click and drag selection across hex and ASCII panes
  • Verify Data Inspector updates on cursor movement with LE/BE and decimal/hex toggles
  • Test Find dialog (Cmd+F) across all four tabs: text, hex, integer, float
  • Test Go To Offset (Cmd+G) navigation
  • Verify drag-and-drop file opening onto window and dock icon

🤖 Generated with Claude Code

Complete implementation of a NIB-free AppKit hex editor targeting macOS 13+,
visually inspired by HxD. Includes piece table edit engine, viewport-culled
Core Graphics rendering, multi-tab sessions with memory-mapped I/O, Data
Inspector sidebar with LE/BE toggle, HxD-style tabbed Find/Replace dialog,
Myers diff, checksums (CRC-16/32/MD5/SHA-1/SHA-256), Intel HEX and S-Record
import/export, drag-and-drop file support, and 77 unit + 7 UI tests.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ConnorHowell ConnorHowell merged commit ad7846c into main Mar 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant