{"repo":"kzmlabs/flink-statefun","free":true,"listed":false,"github":"https://github.com/kzmlabs/flink-statefun","clone":"git clone https://github.com/kzmlabs/flink-statefun.git","description":"Stateful actors on Apache Flink 2.x and Java 21 — durable per-key state, exactly-once messaging, Kafka and Kinesis I/O, Kubernetes-native deployment. Continues the Apache Stateful Functions programming model on the modern Flink line.","language":"Java","stars":13,"topics":["actor-model","apache-flink","distributed-systems","event-driven","event-driven-architecture","flink","flink-kubernetes-operator","java","java21","kafka"],"license":"Apache-2.0","category":"data-pipelines","readme_excerpt":"StateFun Actors by Kzmlabs Stateful actors on Apache Flink 2.x and Java 21 — durable per-key state, exactly-once messaging, Kafka and Kinesis I/O, Kubernetes-native deployment. Continues the Apache Stateful Functions programming model on the modern Flink line, with active releases on Maven Central and GHCR. 📖 Documentation &nbsp;·&nbsp; ⚡ Quickstart &nbsp;·&nbsp; 📦 Maven Central &nbsp;·&nbsp; 🐳 GHCR &nbsp;·&nbsp; 🆚 vs Apache StateFun &nbsp;·&nbsp; 🌟 Awesome StateFun --- What is this? You write a function keyed by a logical ID. The runtime gives it per-key durable state, routes messages to it, replays on failure, and connects it to Kafka and Kinesis. Actor programming on top of Apache Flink — without writing a Flink job by hand. Use cases: event-driven microservices, real-time fraud detection, IoT digital twins, payment orchestration, actor-style stateful compute, distributed sagas, serverless stream processing. Why this exists Apache Stateful Functions stopped releasing in October 2024 at 3.4.0, locked to Flink 1.16 and Java 11. Anyone wanting to run it against modern Flink either pinned old dependencies or vendored their own patches. StateFun Actors is the public, actively maintained branch — same code, modern stack, no vendor lock-in. Update — May 2026: Apache has filed FLIP-569: Sunset the Stateful Functions sub-project, formalising the end of upstream maintenance and naming \"fork the repository\" as one of the migration paths. This fork was already active before the p","default_branch":null,"files":null,"tree":[],"storefront":"/r/kzmlabs","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/kzmlabs/flink-statefun/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}