Show HN: Reactive Signals for Python – inspired by Angular's reactivity model

https://github.com/buiapp/reaktiv
by buibuibui • 1 year ago
31 18 1 year ago

Hey everyone, I built reaktiv, a small reactive signals library for Python, inspired by Angular’s reactivity model. It lets you define Signals, Computed Values, and Effects that automatically track dependencies and update efficiently. The main focus is async-first reactivity without external dependencies.

Here is an example code:

``` import asyncio from reaktiv import Signal, ComputeSignal, Effect

async def main(): count = Signal(0) doubled = ComputeSignal(lambda: count.get() * 2)

    async def log_count():
        print(f"Count: {count.get()}, Doubled: {doubled.get()}")

    Effect(log_count).schedule()
    count.set(5)  # Triggers: "Count: 5, Doubled: 10"
    await asyncio.sleep(0)  # Allow effects to process
asyncio.run(main()) ```

Related Stories

Loading related stories...

Source preview

github.com