{"id":16157662,"url":"https://github.com/theawiteb/oxide_todo_sdk","last_synced_at":"2025-04-07T01:40:42.782Z","repository":{"id":91678928,"uuid":"605058847","full_name":"TheAwiteb/oxide_todo_sdk","owner":"TheAwiteb","description":"Rust SDK for the Oxide Todo API","archived":false,"fork":false,"pushed_at":"2023-03-10T12:21:58.000Z","size":68,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-29T09:47:25.051Z","etag":null,"topics":["rust","sdk","todo"],"latest_commit_sha":null,"homepage":"https://docs.rs/oxide_todo_sdk","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TheAwiteb.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":"2023-02-22T11:02:05.000Z","updated_at":"2023-02-22T11:03:11.000Z","dependencies_parsed_at":"2023-07-21T15:31:48.674Z","dependency_job_id":null,"html_url":"https://github.com/TheAwiteb/oxide_todo_sdk","commit_stats":{"total_commits":36,"total_committers":1,"mean_commits":36.0,"dds":0.0,"last_synced_commit":"5f6b19daca3874132abdcfb1aaea3e340f729a67"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheAwiteb%2Foxide_todo_sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheAwiteb%2Foxide_todo_sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheAwiteb%2Foxide_todo_sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheAwiteb%2Foxide_todo_sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TheAwiteb","download_url":"https://codeload.github.com/TheAwiteb/oxide_todo_sdk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247578625,"owners_count":20961269,"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":["rust","sdk","todo"],"created_at":"2024-10-10T01:50:15.041Z","updated_at":"2025-04-07T01:40:42.750Z","avatar_url":"https://github.com/TheAwiteb.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Oxide Todo SDK\nA asynchronous SDK (Software Development Kit) for [oxide_todo](https://github.com/TheAwiteb/oxide_todo) written in Rust.\nIt provides a simple API to interact with the server.\n\n## MSRV (Minimum Supported Rust Version)\nThe minimum supported Rust version is 1.64.0. (Recommended during development)\n\n## Usage\nAdd this to your `Cargo.toml`:\n```toml\n[dependencies]\noxide_todo_sdk = \"0.1.0\"\n```\n\n## Examples\nThis example shows how to create a new todo:\n```rust\nuse oxide_todo_sdk::types::TodoStatus;\nuse oxide_todo_sdk::Client;\nuse oxide_todo_sdk::errors::Result as OxideTodoResult;\n\n#[tokio::main]\nasync fn main() -\u003e OxideTodoResult\u003c()\u003e {\n    let todo = Client::new(\"http://localhost:8080\")\n        .login(\"username\", \"password\")\n        .await? // Type: oxide_todo_sdk::types::User\n        .create_todo(\"title\") // Type: oxide_todo_sdk::types::Todo\n        .set_status(TodoStatus::Completed) // Type: oxide_todo_sdk::types::Todo\n        .await?; // Type: oxide_todo_sdk::types::Todo\n    println!(\"Todo created: {todo:?}\");\n    // ^ This need `debug` feature\n    Ok(())\n}\n```\nAs you can see above, the SDK is flexible and you can await the Todo type directly.\n\nCheck out the [documentation](https://docs.rs/oxide_todo_sdk) for more information. Also check out the [examples](https://github.com/TheAwiteb/oxide_todo_sdk/tree/master/examples) for more examples.\n\n## Features\n- [x] Authentication\n    - [x] Register\n    - [x] Login\n    - [x] Revoke Token\n- [x] Todos\n    - [x] Create Todo\n    - [x] Get Todo\n    - [x] Update Todo\n    - [X] Delete Todo\n    - [X] List Todos (including search)\n    - [ ] Delete All Todos\n- [Server Metadata]\n    - [ ] Get Server Metadata\n\n## Contributing\nIf you want to contribute to this project, feel free to open a pull request. If you want to add a new feature, please open an issue first. If you have any questions, feel free to open an issue.\n\n## Code of Conduct\nThis project adheres to the [Rust Code of Conduct](https://www.rust-lang.org/policies/code-of-conduct). By participating, you are expected to uphold this code.\n\n## License\nThis project is licensed under the terms of the MIT license. See [LICENSE](https://github.com/TheAwiteb/oxide_todo_sdk/blob/master/LICENSE) for more information.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheawiteb%2Foxide_todo_sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftheawiteb%2Foxide_todo_sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheawiteb%2Foxide_todo_sdk/lists"}