Hachoir is a Python library used to represent a binary file as a tree of Python objects. Each object has a type, a value, an address, etc. The goal is to be able to know the meaning of each bit in a file. Hachoir is able to open invalid or truncated files. It only reads or computes data on demand to minimize load times. Many field types are predefined (integer, bit, string, etc.) and strings with a given character set (such as ISO-8859-1 or UTF-8) are supported. Addresses and sizes are stored in bits.
Bokken is a GUI for the Pyew and Radare2 projects. It provides an interface to almost all the features of Pyew, and many in radare2. It's intended to be a multi-architecture disassembler and binary analysis tool, and maybe some day an alternative for commercial alternatives as IDA Pro. Currently, Bokken is neither a hexadecimal editor nor a full featured disassembler, so it should not be used for deep code analysis or for modifying files.