- A solid key-value database engine in under 90 source lines of code.
- Compatibility with strings including control characters.
- A (for computers) easy to read file format.
- Written in Golang, resulting in great performance.
First, install the library with this command:
go get github.com/sys-256/BarbDBThen you can use BarbDB by simply importing it, for example:
package main
import (
"fmt""github.com/sys-256/BarbDB"
)
funcmain() {
// Initialize the databasedb, openError:=BarbDB.OpenDB("./main.barb")
ifopenError!=nil {
fmt.Println(openError)
return
}
// Set some valuessetError1:=db.Set("Foo", "This is BarbDB!")
setError2:=db.Set("Bar", "Even \t, \n and \000 work!")
ifsetError1!=nil||setError2!=nil {
fmt.Println("Error setting values!\n", setError1, setError2)
}
// Try retrieving one of the set valuesresult, getError:=db.Get("Bar")
ifgetError!=nil {
fmt.Println(getError)
} else {
fmt.Println(result)
}
// Delete a valuedeleteError:=db.Delete("Foo")
ifdeleteError!=nil {
fmt.Println(deleteError)
}
// Close the databasecloseError:=db.Close()
ifcloseError!=nil {
fmt.Println(closeError)
}
}Everyone is free to contribute, whether that is a bug report, feature request or feature implementation! If you want to implement a big feature, or if you're going to implement breaking changes, please create an issue to ask for approval first.
See the LICENSE file.