GEDB – A pure-Go embedded database
Hello HN! These last few months I've been working on my first open source project: an embedded database written in pure-go. That took me some months, as I had to learn how to deal with such large packages. Until then, all packages I had made were quite small an did not require much. I usually did not have to worry about things like allocation optimization and instance pools until This project. It started when I wanted to make a port of a tool to a TUI environment. I'm actually used to working with TUIs in golang, so that was my language of choice. The tool I wanted to port is written in…
What it does
In the maker’s words, at launch
Hello HN! These last few months I've been working on my first open source project: an embedded database written in pure-go. That took me some months, as I had to learn how to deal with such large packages. Until then, all packages I had made were quite small an did not require much. I usually did not have to worry about things like allocation optimization and instance pools until This project. It started when I wanted to make a port of a tool to a TUI environment. I'm actually used to working with TUIs in golang, so that was my language of choice. The tool I wanted to port is written in TypeScript and uses NeDB (written in JavaScript) as database. Since I feel more comfortable working with compiled languages, I decided to create my own database, making sure it was compatible with NeDB, and that's what I did for the last few months. And that's how GEDB was created. It's a mongodb-like embedded database, written in pure-go. It supports a subset of useful querying options of MongoDB (keywords like $lt, $exists, $in, $where, etc.). By default, it uses a in-memory-only storage, but can easily initialized with a data file. Everything in my package can be dependency injected, as everything is controlled interfaces. Serialization, querying syntax, document structure, indexing and more, all can be replaced by implementing an interface. I've also been considering adopting a new document model, by creating a binary type (like BSON) to reduce drastically the cost of creating, maintaining and copying documents (they currently are map[string]any). The project is currently in an early stage, version 0.1.0, so I'm okay with making changes to the API for now, until I'm ready to release version 1.x.x I would be really glad if you guys could check it out and give some feedback. An issue, suggestion or a star are very welcome. My repository can be found on my github: https://github.com/vinicius-lino-figueiredo/gedb
Does the same job
all alternatives →- GIGodb is a simple Go ORM for PostgreSQL, MySQL, SQLite and SQL Server2016 · github.com · ▲205

- SLsoft-launching one of my pet projects2011 · ▲27
So a while ago I was thinking it would be neat to build a site that had the most absolute utility. The idea I came up with was a site to store those little protips that are super useful, if you know them ahead of time. I hired a guy to work on it with me, and ClueDB was born: http://cluedb.com/ Please give it a whirl (it uses Twitter auth as login but doesn't tweet anything) and tell me what you think! (Various trivia: My first try at a project coded by someone else and "product managed" by me. Runs on Flask + MongoDB. Also, this is totally unrelated to my startup.)
- IMI Made New Golang Database Migration Tool2024 · github.com · ▲6
Hello HN, I've just released a new migration tool for Go that mimics the functionality of Ruby on Rails migrations. It's designed to help Go developers manage database schema changes with ease. This allows you several benefits: - Write type-safe migrations - Auto down of migrations whenever it's possible - Easy backfill even with business logic because it's Go code - Painless integration with existing schema - sql.DB compatible and driver agnostic (it uses your driver) I have a pretty complete API to manage Postgres schema and I am working on the SQLite one (a little more complicated due to…
- OOOkdb – OT Simplified2020 · okdb.io · ▲37
- ASA Schemaless Data Store Within Your SQL Database2022 · schemafreesql.com · ▲45
Hi HN, we're Eric and Dean, creators of SchemafreeSQL. Its roots go back to an on-line Web App Development Environment we developed back in 1999. It was comprised of an IDE, Web Server, Object Store, Virtual File System, Template System, and polyglot (Java, JavaScript, and Python). Of course, we named it “.OS”. Then we ended up dropping it. But that's a story for another time. It was the ease of use of the Object Store from .OS that we really missed, which brings us back to SchemafreeSQL. It provides an enhanced API to your SQL Database which allows it to function as a Schemaless…
More dev tools this month
the category →



Open-source GTM skills for technical founders
Dev tools · 29d ago · gtmcofounder.com

OpenTrailPaper is open-source bike computer firmware for the LilyGO T5S3 4.7" E-Paper PRO. It supports offline maps, GPX routes, FIT recording and Bluetooth sensors.
Dev tools · 1d ago · opentrailpaper.com
