{"id":20087709,"url":"https://github.com/tohrxyz/walley-db","last_synced_at":"2026-05-08T06:11:17.743Z","repository":{"id":256185588,"uuid":"854543393","full_name":"tohrxyz/walley-db","owner":"tohrxyz","description":"Hobby binary-based database implementation in Golang","archived":false,"fork":false,"pushed_at":"2024-09-12T16:03:00.000Z","size":27,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T12:06:46.210Z","etag":null,"topics":["binary","database","golang"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tohrxyz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-09-09T11:14:31.000Z","updated_at":"2024-09-12T16:03:10.000Z","dependencies_parsed_at":"2024-11-13T16:06:17.531Z","dependency_job_id":null,"html_url":"https://github.com/tohrxyz/walley-db","commit_stats":null,"previous_names":["tohrxyz/walley-db"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tohrxyz%2Fwalley-db","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tohrxyz%2Fwalley-db/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tohrxyz%2Fwalley-db/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tohrxyz%2Fwalley-db/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tohrxyz","download_url":"https://codeload.github.com/tohrxyz/walley-db/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241523941,"owners_count":19976424,"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":["binary","database","golang"],"created_at":"2024-11-13T16:06:15.039Z","updated_at":"2026-05-08T06:11:12.677Z","avatar_url":"https://github.com/tohrxyz.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚧 Walley-DB\nHobby binary-based database implementation in Golang\n\n## Usage\nCreating a new table\n```sh\n$ go run main.go CREATE TABLE \u003ctable_name\u003e \u003ccolumn_name\u003e:\u003cdata_type\u003e=\u003cbyte_length\u003e\n```\nInserting a record into table\n```sh\n$ go run main.go INSERT TABLE \u003ctable_name\u003e \u003ccolumn_name\u003e=\u003cvalue\u003e ...\n```\nWalley-DB files are stored under `$HOME/.walleydb`\n\n^^ table is created at `~/.walleydb/\u003ctable_name\u003e`\n\nEach table has it's column configuration saved in `~/.walleydb/\u003ctable_name\u003e/\u003ctable_name\u003e.conf` and the configuration looks as this:\n```\n\u003ccolumn_name\u003e:\u003cdata_type\u003e=\u003cbyte_length\u003e\\n\n```\n\n### ...so for example\nCreate new table called `users` with 2 columns:\n- id of type int with byte size 8B (int64)\n- name of type string with byte size 20B (20 base utf8 encoded chars)\n```sh\n$ go run main.go CREATE TABLE users id:int=8 name:string=20\n```\n\nthis saves the whole table under `~/.walleydb/users` and configuration file `~/.walleydb/users/users.conf` will look like this:\n```\nid:int=8\nname:string=20\n```\n\nInsert a new record into this table\n```sh\n$ go run main.go INSERT TABLE users id=123 name=JohnDoe\n```\n\nthis saves this new user into `~/.walley-db/users/users.wdb` as a fixed length binary record like\n```\n00 00 00 00 00 31 32 33 (8B of id)\n00 00 00 00 00 00 00 00 00 00 00 00 00 4A 6F 68 6E 44 6F 65 (20B of name)\n```\n^^ note that with table configured to have `8B` for `id` and `20B` for `name`, the whole single record has total length of `28B`.\n\n^^^^ note that currently everything is being written as a `UTF-8` character.\n\n## 👷‍♂️ Under construction\nThe whole thing is at the very beginnings, I'm trying to learn a lot of things during this time and will update this projects based on my accomplishments. It's not necessarily meant to be a production-grade DB, just an experiment on what I can come up with.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftohrxyz%2Fwalley-db","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftohrxyz%2Fwalley-db","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftohrxyz%2Fwalley-db/lists"}