Awesome Open Source
Awesome Open Source

Simple Bolt Build Status GoDoc Go Report Card

Simple way to use the Bolt database. Similar design to simpleredis.

Online API Documentation

Features and limitations

  • Supports simple use of lists, hashmaps, sets and key/values.
  • Deals mainly with strings.
  • Requires Go 1.9 or later.
  • Note that HashMap is implemented only for API-compatibility with simpleredis, and does not have the same performance profile as the HashMap implementation in simpleredis, simplemaria (MariaDB/MySQL) or simplehstore (PostgreSQL w/ HSTORE).

Example usage

package main

import (


func main() {
	// New bolt database struct
	db, err := simplebolt.New("bolt.db")
	if err != nil {
		log.Fatalf("Could not create database! %s", err)
	defer db.Close()

	// Create a list named "greetings"
	list, err := simplebolt.NewList(db, "greetings")
	if err != nil {
		log.Fatalf("Could not create a list! %s", err)

	// Add "hello" to the list
	if err := list.Add("hello"); err != nil {
		log.Fatalf("Could not add an item to the list! %s", err)

	// Get the last item of the list
	if item, err := list.Last(); err != nil {
		log.Fatalf("Could not fetch the last item from the list! %s", err)
	} else {
		log.Println("The value of the stored item is:", item)

	// Remove the list
	if err := list.Remove(); err != nil {
		log.Fatalf("Could not remove the list! %s", err)


  • Luis Villegas, for the linked list functionality.

Version, license and author

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Go (193,702
String (1,443
Bolt (143
Related Projects