Websocket KV database with pub/sub support
update changelog
more concurrent fixes
actually fix the deadlock lmao



You can also use your local clone with git send-email.


Websocket-based Key-value store, can use many databases on the backend. Has a slim set of features (get/set/pub/sub), mostly what's needed for strimertul.


To use kilovolt, you will need a database driver.

Official drivers exist for the current databases:

Database Driver module
Pebble strimertul/kilovolt-driver-pebble
BadgerDB strimertul/kv-badgerdb (deprecated)

If you have built a driver, feel free to submit a just send a patch request to strimertul-devel or email me to have it added to this README!

#Go mod and git.sr.ht

Due to Google's aggressive behavior and refusal to conform to standard internet "don't be a dick" code (aka DDoSsing), you will need to bypass GOPROXY to be able to clone this repository, like this:

export GOPRIVATE=git.sr.ht


We maintain a few libraries to interact with Kilovolt, you can find a list in the wiki.

If you don't find one that suits you, just write one yourself, I promise it's really simple! See PROTOCOL.md for all you'll need to implement to make it work.


Most of the code here is based on Gorilla Websocket's chat example, which is licensed under BSD-2-Clause (see LICENSE-gorilla).

The entire project is licensed under ISC (see LICENSE).