Skip to content
embeddable persistent object store
Go
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
epos
.travis.yml
LICENSE
README.md
backends.go
collection.go
condition.go
database.go
diskv_backend.go
expression.go
expression_test.go
index.go
index_test.go
leveldb_backend.go
query.go
query_test.go
result.go
store_test.go

README.md

README for epos

Build Status

Introduction

epos is a embeddable persistent object store, written in Go. It is meant to store, retrieve, query and delete Go objects to a local file store. In this respect, it is NoSQL database, but it only works on local files and is embeddable into existing Go programs, so it can be thought of as the SQLite of NoSQL databases.

Here is a very basic overview how to use epos:

// open/create database:
db, err := epos.OpenDatabase("foo.db", epos.STORAGE_AUTO) // also available: STORAGE_DISKV, STORAGE_LEVELDB
// insert item:
id, err = db.Coll("users").Insert(new_user)
// update item:
err = db.Coll("users").Update(id, updated_user)
// index fields:
err = db.Coll("users").AddIndex("login")
// query items:
result, err = db.Coll("users").Query(epos.Expression("(eq username foobar)"))
for result.Next(&id, &data) {
    // handle data
}

License

See file LICENSE for details.

API Documentation

You can find the latest API documentation here: http://godoc.org/github.com/akrennmair/epos

Author

Andreas Krennmair ak@synflood.at

Something went wrong with that request. Please try again.