{"id":15882575,"url":"https://github.com/yoeight/gethdb","last_synced_at":"2025-03-17T13:31:25.064Z","repository":{"id":246610369,"uuid":"535168401","full_name":"YoEight/GethDB","owner":"YoEight","description":"The Database For The People","archived":false,"fork":false,"pushed_at":"2025-01-13T05:00:20.000Z","size":702,"stargazers_count":5,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-15T00:33:52.325Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YoEight.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-11T02:15:18.000Z","updated_at":"2025-01-12T21:21:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"f403b54e-0293-48ce-b6b4-0ef96b4fd187","html_url":"https://github.com/YoEight/GethDB","commit_stats":{"total_commits":290,"total_committers":1,"mean_commits":290.0,"dds":0.0,"last_synced_commit":"64efba43b7dc9bbe741658782c3e35d128268e07"},"previous_names":["yoeight/gethdb"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YoEight%2FGethDB","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YoEight%2FGethDB/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YoEight%2FGethDB/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YoEight%2FGethDB/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YoEight","download_url":"https://codeload.github.com/YoEight/GethDB/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243864808,"owners_count":20360357,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-06T04:05:10.091Z","updated_at":"2025-03-17T13:31:24.422Z","avatar_url":"https://github.com/YoEight.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"GethDB\n======\n\nThe Database For The People.\n\n## Introduction\n\nThis project is not a political statement. It is inspired by the Khelish word \"Geth,\" meaning \"Servant of the People.\"\n\nThe project is purely experimental and is where I explore various aspects of database design. I aim to test specific\ndata structures and observe their behavior in real-life scenarios.\n\nThis is a side project that I work on during my spare time. It is not production-ready, and most of the code is\nundocumented. Although the code is written entirely in Rust, performance is not a primary focus.\n\n## Supported platforms\n\nThe codebase should compile on any 64-bit platform supported by the Rust compiler. So far, it has been tested on Linux,\nmacOS, and Windows. Please note that Linux will remain the primary target\n\n## Features\n\nThe core engine is a NoSQL, append-only, and immutable database with the following key features:\n\n* Custom binary format for storing data, based on Protobuf 2.\n* Indexing is achieved through a homemade LSM tree implementation.\n* Client communication is handled via gRPC.\n* Full-featured REPL for database interaction.\n* Capability to spawn programs using the [Pyro] programming language.\n* Cluster functionality using a homemade Raft implementation (though it is not fully integrated yet).\n\n## What's next?\n\nThis is the features I want to work on\n\n* Complete benchmark suite\n* Support other programming languages for spawn processes, most likely Lua\n* Introduce plugins\n* Exposes the database core as a programmable platform.\n\n[Pyro]: https://github.com/YoEight/pyro","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyoeight%2Fgethdb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyoeight%2Fgethdb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyoeight%2Fgethdb/lists"}