IO Ninja is an all-in-one scriptable terminal, sniffer and monitor. It is aimed at system administrators, network security experts and developers of communication software, firmware and hardware.
Out-of-the-box IO Ninja can be used as:
* Serial terminal
* TCP terminal (both client and server)
* UDP terminal with support for UDP broadcasts
* SSH terminal
* Windows named pipe terminal
* Generic file terminal (for working with custom device drivers, named pipes or FIFOs)
* Serial monitor
* Network sniffer with support for injecting user-defined frames
* TCP proxy (combination of TCP server and TCP client)
IO Ninja also shines at support for binary data -- both editing binary packets before sending as well as displaying both incoming and outgouing (RX/TX) binary data in a communication log. There is a modern hex editor with support for nibble edition, insert/overwrite, copy/paste/undo/redo etc. IO Ninja also introduces template packet editor (define a packet structure in Jancy language and then fill in the fields using property grid). Binary data in log is interleaved with informational textual messages thus creating a clean single-sheet log. Log engine allows binary data display as hex-view or plain text, merge incoming (as well as outgoing) binary packets together, merged packet boundaries are (optionally) highlighted in a checker pattern. Multiple modes of binary data copy are supported (copy-as-text, copy-as-hex, copy-as-C-array, save-as-file etc).
The biggest difference of IO Ninja from competitors is programmability. IO Ninja uses our innovative programming language Jancy and lets users turn it into almost any IO-related utility they might need -- protocol analyzer, device emulator, firmware uploader, testing utility etc.