{"id":31865441,"url":"https://github.com/w-kuipers/alphadb","last_synced_at":"2026-05-08T21:02:31.096Z","repository":{"id":204299322,"uuid":"711550730","full_name":"w-kuipers/alphadb","owner":"w-kuipers","description":"AlphaDB is a versatile tool for managing MySQL database versions, using JSON to define structures and simplify migrations across environments.","archived":false,"fork":false,"pushed_at":"2026-05-07T21:09:14.000Z","size":1690,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-05-07T21:33:06.999Z","etag":null,"topics":["database","database-management","database-management-system","migration-tool","mysql","mysql-versions","sql","version-control","version-control-system"],"latest_commit_sha":null,"homepage":"https://alphadb.w-kuipers.com/","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/w-kuipers.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-10-29T16:01:43.000Z","updated_at":"2026-05-07T21:04:43.000Z","dependencies_parsed_at":"2023-11-21T15:46:15.045Z","dependency_job_id":"7e22b647-e8fa-4826-aaf5-93cc46f6f56d","html_url":"https://github.com/w-kuipers/alphadb","commit_stats":null,"previous_names":["w-kuipers/alphadb"],"tags_count":75,"template":false,"template_full_name":null,"purl":"pkg:github/w-kuipers/alphadb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/w-kuipers%2Falphadb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/w-kuipers%2Falphadb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/w-kuipers%2Falphadb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/w-kuipers%2Falphadb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/w-kuipers","download_url":"https://codeload.github.com/w-kuipers/alphadb/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/w-kuipers%2Falphadb/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32797265,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"ssl_error","status_checked_at":"2026-05-08T08:22:45.650Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["database","database-management","database-management-system","migration-tool","mysql","mysql-versions","sql","version-control","version-control-system"],"created_at":"2025-10-12T19:19:41.744Z","updated_at":"2026-05-08T21:02:31.085Z","avatar_url":"https://github.com/w-kuipers.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"![AlphaDB](https://github.com/w-kuipers/alphadb/blob/main/assets/alphadb-banner.png?raw=true)\n\n[![GitHub releases](https://img.shields.io/github/v/release/w-kuipers/alphadb)](https://github.com/w-kuipers/alphadb/releases)\n[![Crates.io Version](https://img.shields.io/crates/v/alphadb)](https://crates.io/crates/alphadb)\n[![PyPI release](https://img.shields.io/pypi/v/alphadb.svg)](https://pypi.org/project/alphadb/)\n[![NPM release](https://img.shields.io/npm/v/%40w-kuipers%2Falphadb-mysql)](https://www.npmjs.com/package/@w-kuipers/alphadb-mysql)\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n[![](https://img.shields.io/github/last-commit/w-kuipers/alphadb?label=last%20modified)](https://github.com/w-kuipers/alphadb)\n[![Tests](https://github.com/w-kuipers/alphadb/actions/workflows/run-tests.yml/badge.svg)](https://github.com/w-kuipers/alphadb/actions/workflows/run-tests.yml)\n\n# AlphaDB\n\nAlphaDB is a powerful and flexible tool for managing MySQL database versions. It allows you to define the structure of your database in a JSON format and simplifies the process of applying and managing migrations across multiple databases. With AlphaDB, you can ensure consistency and control in your database schema evolution, whether you’re working in development, staging, or production environments.\n\n---\n\n## Beta\n\nAlphaDB is currently in `beta` stage. Breaking changes should be expected.\n\n---\n\n## Key Features\n\n- **JSON-Based Database Schema**: Define your database structure in a clear, human-readable JSON format.\n- **Easy Migration Management**: Apply, track, and roll back migrations seamlessly across multiple databases.\n- **Version Control for Your Database**: Keep your database schema in sync with your application code.\n- **Lightweight and Developer-Friendly**: Designed to integrate smoothly into your development workflow.\n\n## Documentation\n\nVisit the [official documentation](https://alphadb.w-kuipers.com/)\n\n## Installation\n\n### Install using `Cargo`\n\n    cargo install alphadb-cli\n\n## Usage\n\nConnect to a database\n\n```bash\nalphadb connect\n```\n\nYou will be asked to provide the database credentials. After connecting the connection will be saved for later use.\n\nMake sure the database is empty, back it up if necessary. If the database is not empty, you can use the `vacate` method.\nNote that this function will erase ALL data in the database and this action is irriversible.\n\n```bash\nalphadb vacate\n```\n\nThe database is now ready to be initialized. The `init` command will create the `adb_conf` table. This holds configuration data for the database.\n\n```bash\nalphadb init\n```\n\nNow we update the database. For this we need to give it a structure. Read more about [version sources](https://alphadb.w-kuipers.com/version-source).\n\n```json\n{\n  \"name\": \"mydb\",\n  \"version\": [\n    {\n      \"_id\": \"0.1.0\",\n      \"createtable\": {\n        \"customers\": {\n          \"primary_key\": \"id\",\n          \"name\": {\n            \"type\": \"VARCHAR\",\n            \"length\": 100\n          },\n          \"id\": {\n            \"type\": \"INT\",\n            \"a_i\": true\n          }\n        }\n      }\n    },\n    {\n      \"_id\": \"1.0.0\",\n      \"createtable\": {\n        \"orders\": {\n          \"primary_key\": \"id\",\n          \"id\": {\n            \"type\": \"INT\",\n            \"a_i\": true\n          },\n          \"date\": {\n            \"type\": \"DATETIME\"\n          },\n          \"note\": {\n            \"type\": \"TEXT\",\n            \"null\": true\n          }\n        }\n      }\n    }\n  ]\n}\n```\n\nThen run the update command.\n\n```bash\nalphadb update\n```\n\nYou will be asked to select a version source. This can be a path to a JSON file or a URL returning JSON data.\n\n## License\n\n[GPL-3.0 LICENSE](https://github.com/w-kuipers/alphadb/blob/main/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fw-kuipers%2Falphadb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fw-kuipers%2Falphadb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fw-kuipers%2Falphadb/lists"}