{"id":19143539,"url":"https://github.com/skytable/client-rust","last_synced_at":"2025-08-21T18:33:21.135Z","repository":{"id":41999940,"uuid":"364602128","full_name":"skytable/client-rust","owner":"skytable","description":"Official Skytable client driver for Rust","archived":false,"fork":false,"pushed_at":"2024-04-07T05:20:45.000Z","size":469,"stargazers_count":39,"open_issues_count":2,"forks_count":5,"subscribers_count":5,"default_branch":"next","last_synced_at":"2024-04-23T10:15:02.689Z","etag":null,"topics":["client","database","driver","key-value-store","nosql","rust","skytable","skytable-client","sql"],"latest_commit_sha":null,"homepage":"https://docs.rs/skytable","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skytable.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}},"created_at":"2021-05-05T14:21:31.000Z","updated_at":"2024-04-06T11:47:23.000Z","dependencies_parsed_at":"2024-04-08T20:10:39.831Z","dependency_job_id":"04587409-76fa-4087-9727-f2ee8d769d26","html_url":"https://github.com/skytable/client-rust","commit_stats":{"total_commits":234,"total_committers":5,"mean_commits":46.8,"dds":"0.017094017094017144","last_synced_commit":"21150d18df136f8006c0907afaffaac5ee523daf"},"previous_names":[],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skytable%2Fclient-rust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skytable%2Fclient-rust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skytable%2Fclient-rust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skytable%2Fclient-rust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skytable","download_url":"https://codeload.github.com/skytable/client-rust/tar.gz/refs/heads/next","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230313917,"owners_count":18207157,"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":["client","database","driver","key-value-store","nosql","rust","skytable","skytable-client","sql"],"created_at":"2024-11-09T07:31:50.454Z","updated_at":"2024-12-20T03:09:33.543Z","avatar_url":"https://github.com/skytable.png","language":"Rust","readme":"# Skytable client [![Crates.io](https://img.shields.io/crates/v/skytable?style=flat-square)](https://crates.io/crates/skytable) [![Test](https://github.com/skytable/client-rust/actions/workflows/test.yml/badge.svg)](https://github.com/skytable/client-rust/actions/workflows/test.yml) [![docs.rs](https://img.shields.io/docsrs/skytable?style=flat-square)](https://docs.rs/skytable) [![GitHub release (latest SemVer including pre-releases)](https://img.shields.io/github/v/release/skytable/client-rust?include_prereleases\u0026style=flat-square)](https://github.com/skytable/client-rust/releases)\n\n## Introduction\n\nThis library is the official client for the free and open-source NoSQL database [Skytable](https://github.com/skytable/skytable). First, go ahead and install Skytable by following the instructions [here](https://docs.skytable.io/getting-started). This library supports all Skytable versions that work with the [Skyhash 2 Protocol](https://docs.skytable.io/protocol/overview). This version of the library was tested with the latest Skytable release (release [0.8.4](https://github.com/skytable/skytable/releases/v0.8.4)). [Read more about supported versions here](#version-support).\n\n**📁 You can [find some usage examples in this folder here](/examples)**.\n\n## Definitive example\n\nThis library only ships with the bare minimum that is required for interacting with Skytable. Once you have\nSkytable installed and running, you're ready to follow this guide!\n\nWe'll start by creating a new binary application and then running actions. Create a new binary application\nby running:\n\n```shell\ncargo new skyapp\n```\n\n**Tip**: You can see a full list of the available actions [here](https://docs.skytable.io/actions-overview).\n\nFirst add this to your `Cargo.toml` file:\n\n```toml\nskytable = \"0.8\"\n```\n\nYou're ready to go!\n\n```rust\nuse skytable::{\n    Query, Response, Config, query,\n    response::Rows,\n};\n\n#[derive(Query, Response)]\n#[derive(Clone, PartialEq, Debug)] // we just do these for the assert (they are not needed)\nstruct User {\n    userid: String,\n    pass: String,\n    followers: u64,\n    email: Option\u003cString\u003e\n}\n\nlet our_user = User { userid: \"user\".into(), pass: \"pass\".into(), followers: 120, email: None };\n\nlet mut db = Config::new_default(\"username\", \"password\").connect().unwrap();\n\n// insert data\nlet q = query!(\"insert into myspace.mymodel(?, ?, ?, ?)\", our_user.clone());\ndb.query_parse::\u003c()\u003e(\u0026q).unwrap();\n\n// select data\nlet user: User = db.query_parse(\u0026query!(\"select * from myspace.mymodel where username = ?\", \u0026our_user.userid)).unwrap();\nassert_eq!(user, our_user);\n\n// select multiple rows\nlet users: Rows\u003cUser\u003e = db.query_parse(\u0026query!(\"select all * from myspace.mymodel limit ?\", 1000u64)).unwrap();\nassert_eq!(users[0].userid, \"user\");\n```\n\n\u003e **Read [docs here to learn BlueQL](https://docs.skytable.io/)**\n\n\n## Version support\n\n- Minimum Supported Rust Version (MSRV): 1.75.0\n- Minimum Supported Skytable Version: 0.8.0\n\n## Features\n\n- Sync API\n- Async API\n- TLS in both sync/async APIs\n- Connection pooling for sync/async\n- Use both sync/async APIs at the same time\n- Always up-to-date\n\n## Contributing\n\nContributions are always welcome. To submit patches please fork this repository and submit a pull request. If you find any bugs, [please open an issue here](https://github.com/skytable/client-rust/issues/new).\n\n## License\n\nThis library is distributed under the [Apache-2.0 License](https://github.com/skytable/client-rust/blob/next/LICENSE).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskytable%2Fclient-rust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskytable%2Fclient-rust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskytable%2Fclient-rust/lists"}