This is a Java-based GUI for data structure visualizations in binary formats, based on Kaitai Struct project. This vis tool uses Java's Swing for its GUI elements.
Its functionality is akin to similar projects:
- kaitai_struct_visualizer in Ruby
- WebIDE in TypeScript for web brosers
- kaitai-struct-vscode in TypeScript for VS Code
... but this Java version is significantly simpler and is no longer under active development.
Kaitai Struct is a declarative language used to describe various binary data structures, laid out in files or in memory: i.e. binary file formats, network stream packet formats, etc.
The main idea is that a particular format is described in Kaitai
Struct language (.ksy
files) only once and then can be compiled with
this compiler into source files in one of the supported programming
languages. These modules will include the generated code for a parser
that can read described data structure from a file / stream and give
access to it in a nice, easy-to-comprehend API.
Install java, maven and, if on windows, git-bash
Run in console:
mvn install
This GUI vis tool project itself is copyright (C) 2016-2019 Kaitai Project.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Vis tool depends on the following libraries:
- kaitai_struct_compiler — GPLv3+ license
- JHexView — LGPL-2.1 license