{"id":13672242,"url":"https://github.com/cda-group/arcon","last_synced_at":"2025-04-27T21:32:32.464Z","repository":{"id":35018872,"uuid":"181695494","full_name":"cda-group/arcon","owner":"cda-group","description":"State-first Streaming Applications in Rust","archived":false,"fork":false,"pushed_at":"2022-08-10T09:36:47.000Z","size":3424,"stargazers_count":175,"open_issues_count":49,"forks_count":17,"subscribers_count":15,"default_branch":"master","last_synced_at":"2024-09-16T17:52:01.561Z","etag":null,"topics":["arrow","data-analytics","dataflow","distributed-computing","rust","stream-processor"],"latest_commit_sha":null,"homepage":"https://cda-group.github.io/arcon/","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/cda-group.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}},"created_at":"2019-04-16T13:32:36.000Z","updated_at":"2024-08-16T08:40:38.000Z","dependencies_parsed_at":"2022-07-21T17:48:37.621Z","dependency_job_id":null,"html_url":"https://github.com/cda-group/arcon","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cda-group%2Farcon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cda-group%2Farcon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cda-group%2Farcon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cda-group%2Farcon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cda-group","download_url":"https://codeload.github.com/cda-group/arcon/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224087186,"owners_count":17253518,"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":["arrow","data-analytics","dataflow","distributed-computing","rust","stream-processor"],"created_at":"2024-08-02T09:01:30.186Z","updated_at":"2024-11-11T10:30:31.312Z","avatar_url":"https://github.com/cda-group.png","language":"Rust","readme":"\u003cp align=\"center\"\u003e\n  \u003cimg width=\"300\" height=\"300\" src=\".github/arcon_logo.png\"\u003e\n\u003c/p\u003e\n\n# Arcon\n\nArcon is a library for building state-first streaming applications in Rust.\n\n![ci](https://github.com/cda-group/arcon/workflows/ci/badge.svg)\n[![Cargo](https://img.shields.io/badge/crates.io-v0.2.1-orange)](https://crates.io/crates/arcon)\n[![Documentation](https://docs.rs/arcon/badge.svg)](https://docs.rs/arcon)\n[![project chat](https://img.shields.io/badge/zulip-join%20chat-ff69b4)](https://arcon.zulipchat.com)\n[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](https://github.com/cda-group/arcon)\n\n#### Project Status\n\nArcon is in development and should be considered experimental until further notice.\n\nThe APIs may break and you should not be running Arcon with important data!\n\n#### Rust Version\n\nArcon builds against the latest stable release and the current MSRV is 1.56.1\n\n### Roadmap\n\nSee the roadmap [here](https://github.com/cda-group/arcon/projects/1)\n\n## Highlights\n\n* Out-of-order Processing\n* Event-time \u0026 Watermarks\n* Epoch Snapshotting for Exactly-once Processing\n* Hybrid Row(Protobuf) / Columnar (Arrow) System\n* Modular State Backend Abstraction\n\n## Example\n\n```rust,no_run\n#[arcon::app]\nfn main() {\n    (0..100u64)\n        .to_stream(|conf| conf.set_arcon_time(ArconTime::Process))\n        .filter(|x| *x \u003e 50)\n        .map(|x| x * 10)\n        .print()\n}\n```\n\nMore examples can be found [here](examples).\n\n## Project Layout\n\n* [`arcon`]: Arcon crate\n* [`arcon_build`]: Protobuf builder\n* [`arcon_macros`]: Arcon derive macros.\n* [`arcon_tests`]: Integration tests\n* [`arcon_util`]: Common Arcon utilities\n* [`docs`]: Project website docs\n* [`examples`]: Example applications\n\n[`arcon`]: arcon\n[`arcon_build`]: arcon_build\n[`arcon_macros`]: arcon_macros\n[`arcon_tests`]: arcon_tests\n[`arcon_util`]: arcon_util\n[`docs`]: docs\n[`examples`]: examples\n\n## Contributing\n\nSee [Contributing](CONTRIBUTING.md)\n\n## Community\n\nArcon is an ambitious project with many different development \u0026 research areas.\n\nIf you find Arcon interesting and want to learn more, then join the [Zulip](https://arcon.zulipchat.com) community!\n\n## Acknowledgements\n\nArcon is influenced by many great projects whether it is implementation, code practices or project structure:\n\n- [Tokio](https://github.com/tokio-rs/tokio)\n- [Datafusion](https://github.com/apache/arrow-datafusion)\n- [Apache Flink](https://github.com/apache/flink)\n- [Sled](https://github.com/spacejam/sled)\n\n## License\n\nThis project is licensed under the [Apache-2.0 license](LICENSE).\n\n## Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Arcon by you shall be licensed as Apache-2.0, without any additional terms or conditions.","funding_links":[],"categories":["Rust"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcda-group%2Farcon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcda-group%2Farcon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcda-group%2Farcon/lists"}