A few years ago I put together a database library that I've been tweaking and using ever since, always a little embarrassed that it's not 'pristine', but at the same time still using it because I can't find anything 'better'. Given the current state of affairs I've finally had a little time to site down and re-write it with proper documentation, to proper coding standards, and using slightly more Pythonic patterns.
Not finished by any means, but I'm sort of up to the level of version 1 with a couple of extras thrown in, compression being the easiest to cover. Tables can now be transparently compressed with either zstd or snappy compression libraries, and there's provision for the generation of a (training) compression dictionary for zstd.
Docs site is starting to look reasonable;
And the API documentation is now 100% generated from source code .. it's interesting, now I can get some 'visible' value from the comments I'm putting into code, I almost seem to 'want' to add them!
I've converted everything over to GitLab (from GitHub) so we're now M$ free again! .. I'm going to be so disappointed if M$ ever buy GitLab ... GitLab have lots of nice features like built-on CI/CD which for the most part works well, but their shared runners seem to be a little unpredictable. I've now added my own runner and disabled the built-in ones, this seems to be a more reliable solution.
I've also found documenting sample code to be worthwhile, classes and methods all hotlink back to the GitLab source, which is handy as I'm forever losing useful snippets ...
The problem I have now is 'what to do next', so many things I want to add and only one pair of hands .. must learn to type faster ...