The data folder location should probably be configurable. For Nerves devices, that definitely needs to be the default, but this lib could technically be used outside of Nerves
:cubdb could prob be a viable option here - That is a simple term key-value store that already handles read/write performance as well as corruption protections instead of having to implement yourself. You dont technically need the KV, but could potentially separate "work lists" based on if its a publish or subscribe event. I've been using this internally as a buffer store if you'd like an example
So I have a few thoughts here:
data
folder location should probably be configurable. For Nerves devices, that definitely needs to be the default, but this lib could technically be used outside of Nervespublish
orsubscribe
event. I've been using this internally as a buffer store if you'd like an example