Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Hexana WebAssembly and Native (ELF/PE/Mach-O) Hex ViewerNew to Visual Studio Code? Get it now.
Hexana WebAssembly and Native (ELF/PE/Mach-O) Hex Viewer

Hexana WebAssembly and Native (ELF/PE/Mach-O) Hex Viewer

JetBrains

jetbrains.com
|
206 installs
| (0) | Free
Binary hex viewer and analyzer with a focus on WebAssembly and Native (ELF/PE/Mach-O) formats
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Hexana

A VS Code extension for viewing, analyzing, and debugging binary files — with deep support for WebAssembly and native binary formats (ELF, Mach-O, PE/COFF).

Open any .wasm, .elf, .exe, .so, .o, .dll, .dylib, .jar, .zip, .class, .dex, or .desc file to explore its structure, inspect hex data, compare binaries, and run or debug modules — all inside VS Code.

Features

Hex Viewer

  • Virtual-scrolling hex dump with byte selection (click, shift-click, drag) and keyboard navigation.
  • Semantic highlighting — bytes are colored by their structural section with labels and navigation arrows between sections.
  • Byte editing — edit individual bytes in-place (without changing file size).
  • Data inspector panel showing different representations (integers, floats, strings) of the selected byte.
  • Text search across hex content.

Hex Viewer

Supported Binary Formats

Format File types
WebAssembly .wasm — core modules, component model binaries, and generic Wasm files
Native binaries ELF, Mach-O, PE/COFF (.elf, .exe, .so, .o, .dll, .dylib, .a, etc.)
Java .class files and .dex (Android Dalvik)
Archives .jar, .zip, .war, .apk (including ZIP64)
Protocol Buffers .desc / .protoset compiled descriptor sets

Structural Analysis

A tabbed analysis panel with views depending on the binary type. All tables support column sorting and text search.

WebAssembly tabs:

  • Summary — section table and binary statistics.
  • Exports — exported items with kind, name, index, and function signatures.
  • Imports — imported items with kind, module, and name.
  • Functions — function index, name, and signature.
  • Data — data segments overview.
  • Custom — custom sections list.
  • Top — largest contributors by size, with a size diagram visualization.
  • Monos — monomorphisation analysis.
  • Garbage — unreferenced/dead code detection.
  • Modules — clickable nested module list with drill-down (component model).
  • Dependencies — component dependency diagram (component model).
  • WAT — WebAssembly Text representation with virtualized navigation between sections, opened in a native VS Code editor tab with syntax highlighting.

Protocol Buffers tabs: Files, Messages, Fields, Enums, Services.

Native binary tabs vary by format and include section tables, symbols, and size analysis with a size diagram.

Exports Tab

Native Binary

Scriptable Info Tabs

Write custom JavaScript analysis scripts that use binary to access binary data and print to display results. Add a script tab via the "+" button — a dialog with instructions and an API reference is shown. CSV and TSV output is rendered as tables.

Binary Comparison

  • Compare WASM — compare two .wasm files showing size changes per section, and for functions a diff of their WAT bodies.
  • Compare Binary — compare two native binary files showing size changes per section.

Both commands are available from the Explorer context menu and the Command Palette.

Wasm Diff

Run Support (WASM)

Run Wasm modules directly from the editor toolbar, with a dialog for choosing exports and program arguments. Supports both core modules (with automatic import stub generation) and component model binaries (with dependency resolution and composition).

Run Config Dialog

Supported runtimes:

  • wasmtime — full-featured runtime with Component Model support
  • WAMR (iwasm) — lightweight runtime for core modules
  • GraalWasm — GraalVM WebAssembly launcher
  • wazero — zero-dependency Go-based runtime
  • Node.js — run via built-in WebAssembly API
  • Browser — run in the system browser via a local HTTP server

Debugging Support (WASM)

Debug WebAssembly modules with breakpoints in source languages (C, C++, Rust, Go, Zig, WAT).

Debug Breakpoint Hit

Supported debug runtimes:

  • wasmtime — via LLDB (requires lldb-dap / LLVM 22.1+)
  • WAMR — via LLDB remote debugging
  • Node.js — via Chrome DevTools Protocol
  • Chrome — via Chrome DevTools Protocol

WASM Component Model

  • Automatic component dependency resolution by scanning workspace directories for matching .wasm files, including transitive dependencies.
  • Navigate nested modules inside a component binary by opening them in separate editor tabs.
  • Save as for nested WASM modules and JAR/ZIP entries — save content to a separate file.

Component Exports

Component Dependencies

MCP Server

A bundled Model Context Protocol server that exposes Hexana's binary analysis capabilities to AI coding assistants. The server is downloaded on demand and registered automatically in VS Code.

  • Requires Java 21 or later (configure via hexana.mcp.javaHome if not on PATH).
  • Commands: Hexana MCP: Update Server, Hexana MCP: Reinstall Server, Hexana MCP: Show Server Status.

Requirements

  • VS Code 1.102 or later.
  • wasmtime (optional) — needed for running and debugging Wasm modules.
  • wasm-tools or wac (optional) — used for component composition when running component model binaries with unresolved imports.
  • Java 21 or later (optional) — needed for the Hexana MCP server. The server is downloaded on demand; set hexana.mcp.javaHome if Java is not available through JAVA_HOME or PATH.
  • LLVM 22.1+ (optional) — needed for WASM debugging with wasmtime or WAMR (provides lldb-dap).

Links

  • Homepage
  • Source code
  • Issue tracker

License

See LICENSE.

This extension collects telemetry data, which is used to help understand how to improve the product. Please refer to JetBrains Privacy Notice for more information about data collection and use. You can opt out of telemetry by setting the hexana.enableStatistics setting to false.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft