Design guidelines for thin Python wrappers to C++ libraries Background I recently ended up writing and rewriting a series of libraries to essentially get them to a point where I could write bindings to them. In doing so, some thoughts on design have evolved into this post. False starts Originally, I had the library and bindings in one repository, which was easier to hack on, and had fewer moving parts.