Skip to content
This repository has been archived by the owner on Oct 10, 2019. It is now read-only.

akrennmair/epos

Repository files navigation

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 [email protected]

About

embeddable persistent object store

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages