Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/0xrawsec/sod
Go Simple Object Database
https://github.com/0xrawsec/sod
database embedded-database go golang orm
Last synced: about 19 hours ago
JSON representation
Go Simple Object Database
- Host: GitHub
- URL: https://github.com/0xrawsec/sod
- Owner: 0xrawsec
- License: gpl-3.0
- Created: 2021-09-01T20:51:26.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2022-07-27T08:22:53.000Z (over 2 years ago)
- Last Synced: 2024-05-01T09:49:24.037Z (7 months ago)
- Topics: database, embedded-database, go, golang, orm
- Language: Go
- Homepage:
- Size: 161 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![Version](https://img.shields.io/github/v/tag/0xrawsec/sod?label=version)
[![GoDoc](https://pkg.go.dev/badge/github.com/0xrawsec/sod)](https://pkg.go.dev/github.com/0xrawsec/sod)
![Build](https://github.com/0xrawsec/sod/actions/workflows/go.yml/badge.svg)
![Coverage](https://raw.githubusercontent.com/0xrawsec/sod/master/.github/coverage/badge.svg)# Go Simple Object Database
A simple database model to store Go structure (on disk) and search across them.
It has features close to what an ORM framework can provide but has the advantage of being:
* in pure Go (de facto portable)
* does not depend on any DB engine (SQL, SQLite, Mongo ...) to do its job
* everything is kept simple (one file per structure and eventually an index)
It supports structure fields indexing to speed up searches on important fields.What should you use this project for:
* you want to implement Go struct persistency in a simple way
* you want to do DB like operations on those structures (Update, Delete, Search ...)
* you don't want to deploy an ORM frameworkWhat you should not use this project for:
* even though performances are not so bad, I don't think you can rely on it for high troughput DB operations# Examples
See [examples](./examples) directory for all examples.