WpfHexEditorIDE
WpfHexEditor Studio is a full-featured IDE built with WPF and .NET 8, combining advanced binary editing, inspection, and reverse engineering in one environment; it supports .NET builds and Visual Studio solutions and aims to be a powerful open-source platform for binary analysis and .NET/Windows development.
Install / Use
/learn @abbaye/WpfHexEditorIDEREADME
<br/>🚧 Active Development — New features, editors and panels are being added regularly. The IDE application is under active construction. Contributions and feedback welcome!
<a href="Images/App-Editors-Welcome.png"><img src="Images/App-Editors-Welcome.png" alt="WPF HexEditor IDE" width="900"/></a> <br/> <sub><i>WpfHexEditor — Full IDE with VS-style docking, project system, and multiple editors</i></sub>
<p> <a href="#-the-ide-application"><b>The IDE</b></a> • <a href="#-editors"><b>Editors</b></a> • <a href="#-controls--libraries"><b>Controls</b></a> • <a href="#-analysis--ide-panels"><b>Panels</b></a> • <a href="#-quick-start"><b>Quick Start</b></a> • <a href="#-documentation"><b>Docs</b></a> • <a href="CHANGELOG.md"><b>Changelog</b></a> </p> </div>🖥️ The IDE Application
WpfHexEditor is a full-featured binary analysis IDE for Windows, built entirely with WPF and .NET. It goes far beyond a simple hex editor — think Visual Studio for binary files.
<table> <tr> <td width="50%">🏗️ Project System
- Solution & Project management (
.whsln/.whproj) - Visual Studio
.sln/.csproj/.vbproj— open and build VS solutions directly (#101–103 ✅ in progress) - MSBuild integration — build, rebuild, clean with output routed to the Build channel
- Virtual & physical folders (like VS Solution Explorer)
- Format versioning with auto-migration
- Per-file state persistence (bookmarks, scroll, encoding)
🪟 VS-Style Docking (🔧 100% in-house engine)
- Float, dock, auto-hide any panel
- Colored tabs with per-document customization
- 18 built-in themes (Dark, Light, VS2022Dark, DarkGlass, Minimal, Office, Cyberpunk, VisualStudio...)
- Tab placement left / right / bottom
📋 IDE Infrastructure
- IDocumentEditor plugin contract — every editor is pluggable
- Shared
UndoEngine— coalescing (500 ms), transactions, save-point tracking;Ctrl+Z/Y/Shift+Zacross all editors - Rectangular selection (Alt+Click) + drag-to-move — CodeEditor & TextEditor
- VS2022-style status bar (edit mode, bytes/line, caret offset, LSP server state)
- Output panel + Error/Diagnostics panel + Dockable Search Panel (
Ctrl+Shift+F) - VS2026-style Options — document tab, auto-save, live theme preview
- Integrated Terminal (
Ctrl+``) — 31 built-in commands, panel/plugin/file management - Command Palette (
Ctrl+Shift+P) — 9 modes: commands, LSP symbols, go-to-line, files, content grep, and more - Command System —
CommandRegistry(~45 commands),KeyBindingService,KeyboardShortcutsPage, TitleBar launcher - Plugin System —
WpfHexEditor.SDKopen API,.whxpluginpackages, Plugin Manager, IDE EventBus (39 types), Capability Registry, Extension Points, Dependency Graph, plugin signing - NuGet Solution Manager — Browse/Installed/Consolidate/Updates across all projects
- DI Infrastructure —
AppServiceCollection(Microsoft.Extensions.DependencyInjection)
🔍 Binary Intelligence
- 400+ file format auto-detection with format-aware editor routing
- Parsed Fields Panel with structure overlay
- Data Inspector — 40+ type interpretations
- Assembly Explorer — .NET PE inspection, types, methods, fields; C# decompilation to Code Editor tab; Extract to Project; Collapse/Close All; Ctrl+Click external symbol decompilation (AppDomain + runtime + NuGet resolution) (#104-106 — in progress)
- HexEditor control — 19 languages with instant switching (IDE UI is English only — full localization engine coming soon)
📝 Editors
WpfHexEditor uses a plugin architecture (IDocumentEditor) — every editor is a standalone, reusable component hosted in the docking system.
| Editor | Status | Progress | Description |
|--------|--------|----------|-------------|
| Hex Editor | ✅ Active | ~75% | Binary editing — insert/overwrite, 400+ format detection, search, bookmarks, TBL, status bar contributor |
| TBL Editor | ✅ Active | ~80% | Character table editor for custom encodings and ROM hacking |
| Code Editor | ✅ Active | ~85% | Multi-language code editor — VS-like navigation bar, 55+ language definitions (incl. F# + VB.NET), URL hover/click, find/replace, split view; Ctrl+Click cross-file nav + external symbol decompilation; Alt+Click rect selection; drag-to-move; shared UndoEngine; #region colorization; data-driven folding (4 strategies); word wrap; multi-caret (Ctrl+Alt+Click, Ctrl+D); gutter diagnostics + scrollbar markers; auto-close brackets/quotes + skip-over + wrap-selection; end-of-block hover hint (} / #endregion / </Tag>); word highlight (VS Code style); sticky scroll with line numbers (#160); Find All References (Shift+F12) + dockable panel + F8 nav; LSP breadcrumb bar, inlay hints, code lens, semantic tokens, code actions (Ctrl+.), rename (F2), signature help, workspace symbols |
| XAML Designer | ✅ Active | ~70% | Full split-pane XAML designer — live WPF rendering canvas with bidirectional sync (canvas↔code, ~95%); move/resize/rotate handles; property inspector (F4); multi-select + alignment guides; snap grid; #region colorization; error card overlay; 4 split layouts (Ctrl+Shift+L); zoom/pan; VS-like Ctrl+Z/Y undo/redo with DesignHistoryPanel; Toolbox, Resource Browser, Design Data and Animation panels; right-click context menu; Ctrl+1/2/3 view modes |
| Text Editor | ✅ Active | ~50% | Text editing with 26 embedded language definitions, auto-detection by extension, encoding support |
| Script Editor | 🔧 Active | ~10% | .hxscript editor with syntax highlighting, run-in-terminal integration, HxScriptEngine backend (#177) |
| Image Viewer | 🔧 Active | ~50% | Binary image viewer — zoom/pan, transform pipeline (rotate/flip/crop/resize), FileShare.ReadWrite for concurrent open |
| Tile Editor | 🔧 Stub | ~5% | Tile-based graphic editor for ROM/binary assets — palette, zoom, pixel grid (#175) |
| Structure Editor | 🔧 Active | ~40% | .whfmt binary template editor — block DataGrid, type/offset/length editing, live save |
| Entropy Viewer | 🔧 Active | ~45% | Visual entropy graph of binary sections — detect encryption, compression, and packed regions |
| Diff / Changeset Viewer | 🔧 Active | ~70% | Side-by-side binary comparison and changeset replay |
| Audio Viewer | 🔧 Stub | ~5% | Audio binary viewer — waveform display (#174) |
| Disassembly Viewer | 🔧 Active | ~30% | x86/x64/ARM binary disassembler — decompiler integration stub (#178) |
| Decompiled Source Viewer | 🔜 Planned | ~0% | C# skeleton + full IL view via ILSpy backend; "Go to Metadata Token" navigation (#106) |
| Memory Snapshot Viewer | 🔜 Planned | ~0% | Load Windows mini-dump .dmp / Linux core-dump; display memory regions, thread stacks, modules (#117) |
| PCAP / Network Capture Viewer | 🔜 Planned | ~0% | Load .pcap / .pcapng; packet list, layer breakdown (Ethernet/IP/TCP/UDP/TLS), raw payload (#136) |
Implementing a new editor? See IDocumentEditor contract and register via
EditorRegistry.
🧩 Standalone Controls & Libraries
All controls are independently reusable — no IDE required. Drop any of them into your own WPF application with a simple project reference.
UI Controls
| Control | Frameworks | Progress | Description | |---------|-----------|----------|-------------| | HexEditor | net8.0-windows | ~80% | Full-featured hex editor UserControl — MVVM, 16 services, insert/overwrite, search, bookmarks, TBL, 400+ format detection | | HexBox | net8.0-windows | ~80% | Lightweight hex input field — zero external dependencies, MVVM-ready | | ColorPicker | net8.0-windows | ~95% | Compact color picker UserControl with RGB/HSV/hex input | | **[BarChart](Sources/WpfHexEditor.BarChart/README.md
Related Skills
node-connect
337.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
337.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.2kCommit, push, and open a PR
