{"id":15907987,"url":"https://github.com/cloudevents/sdk-rust","last_synced_at":"2025-05-14T16:14:31.492Z","repository":{"id":37953050,"uuid":"241193992","full_name":"cloudevents/sdk-rust","owner":"cloudevents","description":"Rust library to interact with CloudEvents","archived":false,"fork":false,"pushed_at":"2025-01-09T10:24:03.000Z","size":794,"stargazers_count":181,"open_issues_count":23,"forks_count":60,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-04-07T19:03:13.923Z","etag":null,"topics":["cloudevents","hacktoberfest","rust"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/cloudevents-sdk","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/cloudevents.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2020-02-17T19:49:10.000Z","updated_at":"2025-03-28T12:01:42.000Z","dependencies_parsed_at":"2023-09-28T16:24:12.012Z","dependency_job_id":"4595e2a5-6d40-4823-b890-7921d05ee097","html_url":"https://github.com/cloudevents/sdk-rust","commit_stats":{"total_commits":203,"total_committers":27,"mean_commits":7.518518518518518,"dds":0.5911330049261083,"last_synced_commit":"f9dde9daaeefe62eb41ea120ff901ff50f502b99"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudevents%2Fsdk-rust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudevents%2Fsdk-rust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudevents%2Fsdk-rust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudevents%2Fsdk-rust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloudevents","download_url":"https://codeload.github.com/cloudevents/sdk-rust/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248968914,"owners_count":21191162,"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":["cloudevents","hacktoberfest","rust"],"created_at":"2024-10-06T14:08:30.639Z","updated_at":"2025-04-14T22:08:17.250Z","avatar_url":"https://github.com/cloudevents.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# CloudEvents SDK Rust [![Crates badge]][crates.io] [![Docs badge]][docs.rs] \n\nThis project implements the [CloudEvents](https://cloudevents.io/) Spec for Rust.\n\nNote: This project is WIP under active development, hence all APIs are considered unstable.\n\n## Spec support\n\n|                               |  [v0.3](https://github.com/cloudevents/spec/tree/v0.3) | [v1.0](https://github.com/cloudevents/spec/tree/v1.0) |\n| :---------------------------: | :----------------------------------------------------------------------------: | :---------------------------------------------------------------------------------: |\n| CloudEvents Core              | ✓ | ✓ |\n| AMQP Protocol Binding         | ✕ | ✕ |\n| AVRO Event Format             | ✕ | ✕ |\n| HTTP Protocol Binding         | ✓ | ✓ |\n| JSON Event Format             | ✓ | ✓ |\n| Kafka Protocol Binding        | ✓ | ✓ |\n| MQTT Protocol Binding         | ✕ | ✕ |\n| NATS Protocol Binding         | ✓ | ✓ |\n| Web hook                      | ✕ | ✕ |\n\n## Crate Structure\n\nThe core modules include definitions for the `Event` and\n`EventBuilder` data structures, JSON serialization rules, and a\nmechanism to support various Protocol Bindings, each of which is\nenabled by a specific [feature flag]:\n\n* `actix`: Integration with [actix](https://actix.rs/).\n* `axum`: Integration with [axum](https://lib.rs/crates/axum).\n* `warp`: Integration with [warp](https://github.com/seanmonstar/warp/).\n* `reqwest`: Integration with [reqwest](https://github.com/seanmonstar/reqwest).\n* `rdkafka`: Integration with [rdkafka](https://fede1024.github.io/rust-rdkafka).\n* `nats`: Integration with [nats](https://github.com/nats-io/nats.rs)\n\nThis crate is continuously tested to work with GNU libc, WASM and musl\ntoolchains.\n\n## Get Started\n\nTo get started, add the dependency to `Cargo.toml`, optionally\nenabling your Protocol Binding of choice:\n\n```toml\n[dependencies]\ncloudevents-sdk = { version = \"0.8.0\" }\n```\n\nNow you can start creating events:\n\n```rust\nuse cloudevents::{EventBuilder, EventBuilderV10};\nuse url::Url;\n\nlet event = EventBuilderV10::new()\n    .id(\"aaa\")\n    .source(Url::parse(\"http://localhost\").unwrap())\n    .ty(\"example.demo\")\n    .build()?;\n```\n\nCheckout the examples using our integrations to learn how to send and receive events:\n\n* [Actix Web Example](example-projects/actix-web-example)\n* [Axum Example](example-projects/axum-example)\n* [Reqwest/WASM Example](example-projects/reqwest-wasm-example)\n* [Kafka Example](example-projects/rdkafka-example)\n* [Warp Example](example-projects/warp-example)\n* [NATS Example](example-projects/nats-example)\n\n## Community\n\n- There are bi-weekly calls immediately following the\n  [Serverless/CloudEvents call](https://github.com/cloudevents/spec#meeting-time)\n  at 9am PT (US Pacific). Which means they will typically start at 10am PT, but\n  if the other call ends early then the SDK call will start early as well. See\n  the\n  [CloudEvents meeting minutes](https://docs.google.com/document/d/1OVF68rpuPK5shIHILK9JOqlZBbfe91RNzQ7u_P7YCDE/edit#)\n  to determine which week will have the call.\n- Slack: #cloudeventssdk (or #cloudevents-sdk-rust) channel under\n  [CNCF's Slack workspace](https://slack.cncf.io/).\n- Email: https://lists.cncf.io/g/cncf-cloudevents-sdk\n- Contact for additional information: Francesco Guardiani (`@slinkydeveloper`\n  on slack).\n\nEach SDK may have its own unique processes, tooling and guidelines, common\ngovernance related material can be found in the\n[CloudEvents `community`](https://github.com/cloudevents/spec/tree/master/community)\ndirectory. In particular, in there you will find information concerning\nhow SDK projects are\n[managed](https://github.com/cloudevents/spec/blob/master/community/SDK-GOVERNANCE.md),\n[guidelines](https://github.com/cloudevents/spec/blob/master/community/SDK-maintainer-guidelines.md)\nfor how PR reviews and approval, and our\n[Code of Conduct](https://github.com/cloudevents/spec/blob/master/community/GOVERNANCE.md#additional-information)\ninformation.\n\nIf there is a security concern with one of the CloudEvents specifications, or\nwith one of the project's SDKs, please send an email to\n[cncf-cloudevents-security@lists.cncf.io](mailto:cncf-cloudevents-security@lists.cncf.io).\n\n[Crates badge]: https://img.shields.io/crates/v/cloudevents-sdk.svg\n[crates.io]: https://crates.io/crates/cloudevents-sdk\n[Docs badge]: https://docs.rs/cloudevents-sdk/badge.svg\n[docs.rs]: https://docs.rs/cloudevents-sdk\n[feature flag]: https://doc.rust-lang.org/cargo/reference/manifest.html#the-features-section\n\n## Additional SDK Resources\n\n- [List of current active maintainers](MAINTAINERS.md)\n- [How to contribute to the project](CONTRIBUTING.md)\n- [SDK's License](LICENSE)\n- [SDK's Release process](RELEASING.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudevents%2Fsdk-rust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloudevents%2Fsdk-rust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudevents%2Fsdk-rust/lists"}