hexview-cli
v1.0.1
Published
Interactive terminal-based binary hex viewer
Readme
hexview-cli
An interactive terminal-based binary hex viewer for Node.js. Designed to handle large files efficiently by reading data in chunks as you scroll.
Installation
Global Installation
To use hexview from anywhere on your system:
npm install -g .Local Development
npm install
node hexview.js <filename>Usage
hexview <filename>Navigation Keys
- Up / Down / j / k: Scroll by one row (16 bytes)
- PageUp / PageDown: Scroll by one screen
- Home: Jump to the beginning of the file
- End: Jump to the end of the file
- S / s: Open centered search prompt
- N / n: Next match (wraps at EOF)
- P / p: Previous match (wraps at BOF)
- G / g: Goto offset prompt (hex/decimal)
- Q / Ctrl+C: Quit the application
Features
- Efficient Memory Usage: Reads only the visible portion of the file from disk.
- Colorized Output: Highlights offsets and ASCII representation.
- Virtualized Scrolling: Smoothly navigate through multi-gigabyte files.
- Responsive UI: Automatically adjusts layout on terminal resize.
- Text Search With Highlighting: Search for UTF-8/ASCII text; current match is highlighted in both hex and text columns.
- Search History & Wrap-Around: Remembers last 5 searches. Use N/P to move through matches; searches wrap around file ends.
- Goto Offset: Jump directly to an address by hex or decimal (e.g.,
0x1A2B,1A2Bh, or6699).
Search
- Press
S/sto open a centered search box. - The prompt shows the last 5 unique searches as
1:term,2:term, ...; type1–5to reuse or enter new text. - Matches are searched as raw UTF-8 bytes; ASCII terms match the decoded text column.
- After a match, the view scrolls so the matched bytes start on the top row and remain highlighted.
N/nfinds the next match;P/pfinds the previous match. Both wrap around at file boundaries and show a small wrap notice.- The footer displays the active search term and the current match offset (e.g.,
Find: 'magic' @ 0x0001A2B3).
Goto
- Press
G/gto open a centered address prompt. - Accepted formats:
- Hex with
0xprefix:0x1A2B - Hex with trailing
h:1A2Bh - Decimal:
6699
- Hex with
- The view aligns to the row containing the target offset.
