The systems was started by Marcelo Boeira in 2016 as a learning vehicle for understanding database systems.
BoJack's data model relies on a key/value store which maps string keys to string array values.
BoJack does not provide any kind of concurrency control. Concurrent client requests are handled by the Crystal language's concurrent Channel class.
Bojack logs, in addition to errors, individual commands for any client action, along with the date and time of interaction, and the client's address and port.
This includes anytime a client connects, or a key is set, updated, or deleted.