For the next few months I will be working on Irmin, focusing on improving general usability. The goal of this effort is to make Irmin more accessible to potential users and clean up the rough edges for existing users.
One of the biggest problems I see right now is that the documentation is out of sync with the current implementation. I’ve just been getting starting refreshing the documentation and tutorials, however here are a few more projects that @samoht and I have discussed:
- Better RPC API:
- We need a better way to access an Irmin database remotely. The REST API is currently available, but not ideal.
- Cap’n Proto? This would be ideal for binary data.
- Graphql? It has already been started but will need some further attention.
- Language bindings
- This, in conjunction with the point above, will allow non-OCaml applications to access data from Irmin in a well-defined manner.
- Planning for this is still in the very early stages, so any ideas in this area are more than welcome!
- Allow JSON datatype on the command line
- We still need to understand how to make this convenient for the user.
- Import/export interoperability with other key/value stores
I would love to hear your thoughts on the above list but am also interested to hearing your own suggestions, either from experience or just based on what you’d want/expect from a project like Irmin.