VoltHex is a focused desktop workspace for inspecting binary files and live memory through the GDB Remote Serial Protocol. It combines a virtualized hex view, typed search, reversible file patches, and live declarative data models in a Tauri 2 application.
- Preact + TypeScript interface designed for dense technical work, with keyboard navigation, ASCII pairing, selectable 8/16/32-byte rows, region context, inspector and command palette.
- Binary files stay in Rust and are read in pages. Patches are non-destructive overlays until an explicit export.
- mGBA-optimized GDB RSP client with packet checksums, ACK/no-ACK negotiation, fragmented/coalesced packet handling, bounded timeouts, chunked reads and writes, and safe fallback from fast reads.
- Typed searches for signed/unsigned integers, floats and fixed-point numbers; comparison operators, alignment and endian controls; validated delta snapshots.
- Versioned
.vhexworkspaces with portable references, transactional saves and backups. Opening a workspace never reconnects a live target automatically. - Safe
.vmodel.jsonmodels with typed inline writes, includes, computed values, automatic file watching, and compressed last-known-good project backups.
Requirements: Node.js 22+, stable Rust with the MSVC toolchain, and the Tauri Windows prerequisites.
npm install
npm run tauri devUseful checks:
npm run build
npm test
cd src-tauri
cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings
cargo test --all-targetsThe ordinary Vite page opens with deterministic demo memory, so most visual and interaction work can be done with npm run dev without an emulator.
- See
docs/MODEL_FORMAT.mdand the machine-readabledocs/vmodel.schema.json. - See
docs/VHEX_FORMAT.mdfor workspace persistence and recovery behavior.
Windows MSI/NSIS bundles are produced by the tag workflow. Releases are created as drafts for manual smoke testing and signing review. The final updater-signing setup is intentionally a publisher step because its public key and GitHub endpoint depend on the repository that will host releases; follow docs/RELEASING.md before the first public tag.
No analytics or telemetry are collected. Licensed under the MIT License.