{"id":19494704,"url":"https://github.com/ceejbot/nuclino-rs","last_synced_at":"2026-02-24T03:02:44.822Z","repository":{"id":243446935,"uuid":"812458550","full_name":"ceejbot/nuclino-rs","owner":"ceejbot","description":"A Rust client for the Nuclino API.","archived":false,"fork":false,"pushed_at":"2024-07-18T00:26:45.000Z","size":64,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"latest","last_synced_at":"2025-03-14T00:05:13.858Z","etag":null,"topics":["nuclino","rust-lang"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ceejbot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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-06-09T00:26:50.000Z","updated_at":"2024-07-18T00:26:46.000Z","dependencies_parsed_at":"2024-06-14T22:23:57.818Z","dependency_job_id":"a2b0ba15-3c5a-4d81-b0a6-596831828c57","html_url":"https://github.com/ceejbot/nuclino-rs","commit_stats":null,"previous_names":["ceejbot/nuclino-rs"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ceejbot%2Fnuclino-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ceejbot%2Fnuclino-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ceejbot%2Fnuclino-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ceejbot%2Fnuclino-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ceejbot","download_url":"https://codeload.github.com/ceejbot/nuclino-rs/tar.gz/refs/heads/latest","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245052673,"owners_count":20553172,"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":["nuclino","rust-lang"],"created_at":"2024-11-10T21:32:11.625Z","updated_at":"2025-10-26T06:39:41.422Z","avatar_url":"https://github.com/ceejbot.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# nuclino-rs\n\n[![Tests](https://github.com/ceejbot/nuclino-rs/actions/workflows/test.yaml/badge.svg)](https://github.com/ceejbot/nuclino-rs/actions/workflows/test.yaml)\n\nThis is a Rust client for the [Nuclino API](https://help.nuclino.com/d3a29686-api). Simplicity and rapid development were my goals for this project and the project that I need it for, so it uses [ureq](https://lib.rs/crates/ureq) as its base http client. This means all api requests are blocking. If this client would be more useful to you with an async http client, let me know.\n\n\n## Usage\n\n `cargo add nuclino-rs` in your project to add the library. There are no optional features. Create an [API key](https://help.nuclino.com/04598850-manage-api-keys) for Nuclino. Provide it in the env var `NUCLINO_API_KEY` and call `nuclino_rs::Client::create_from_env()` to create a default client. Or you can provide it to your program in some other way and pass it to the client `create()` function.and then start making requests using the client's functions.\n\n `cargo doc --open` has more information, as do [the online docs](https://docs.rs/nuclino-rs/latest/nuclino_rs/).\n\n## Example\n\n```rs\nlet client = nuclino_rs::Client::create_from_env()?;\nlet workspaces = client.workspace_list(None, None)?.to_vec();\nlet first = workspaces.first().unwrap();\n\nlet newpage = nuclino_rs::NewPageBuilder::item()\n    .title(\"I'm just a test\")\n    .content(\n        \"Yes I'm only a *test* and I'm sitting here on a Capitol Hill. Wait. That didn't rhyme.\",\n    )\n    .workspace(first.id())\n    .build();\nlet newpage = client.page_create(newpage)?;\n```\n\nSee `examples/iterate_workspace_pages.rs` for a more complex example of accessing Nuclino data, creating wiki pages, and deleting them. `cargo run --example iterate_workspace_pages` to run this example.\n\n## TODO\n\nThe API should be completely covered and theoretically working. The parts I've needed to use for my project are definitely working. Known work that I'd like to do:\n\n- handle rate limiting\n\n## LICENSE\n\nThis code is licensed via [the Parity Public License.](https://paritylicense.com) This license requires people who build on top of this source code to share their work with the community, too. See the license text for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fceejbot%2Fnuclino-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fceejbot%2Fnuclino-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fceejbot%2Fnuclino-rs/lists"}