Skip to content

A curated list of Kaitai Struct tools and resources

License

Notifications You must be signed in to change notification settings

kaitai-io/awesome-kaitai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 

Repository files navigation

Awesome Kaitai Link status

A curated list of Kaitai Struct tools and resources

Compiler

  • Kaitai Struct: compiler to translate .ksy => .cpp / .cs / .dot / .java / .js / .php / .pm / .py / .rb (Repository, Releases)
  • kaitaigo: alternative compiler to translate .ksy => .go, written in Golang
  • nimitai: The compiler implemented as macro in Nimlang (.ksy => Nim AST)

Visualizers, IDEs, hex editors

Arbitrary file formats

These tools allow to develop your own Kaitai Struct specifications in iterative fashion by visualizing data locations in hex dump as one develops .ksy.

Fixed set of file formats

These visualizers / hex editors allow only fixed set of precompiled file format specifications to be used.

Tools

  • kaitaiStructCompile.py - Automate ksy compilation into python files (Repository)
  • ksylint - A linter for .ksy files
  • ksy-dl - Downloads .ksy files and their dependencies straight from the official kaitai-struct format gallery.

CI

Docker images

Converter

  • Convert C to ksy file (Snippet)
  • Convert Synalyze It! Grammars to ksy files (Repository)
  • Converting Kaitai structs to wireshark LUA plugins (Repository) - deprecated

Formats

Help, Documentation & Community

Runtimes

Testing

Misc

  • KaitaiFS: mount any filesystem specified with a .ksy as a real file system (Repository, Issues)
  • Compression processing libraries (Repository)

Other Resources

Similar projects / tools

Hex Editors

File Grammars