{"library":"reacton","title":"Reacton","description":"Reacton is a pure Python library that ports the declarative UI paradigm of React (JavaScript) to the ipywidgets ecosystem. It enables developers to build reusable and composable user interface components within Jupyter notebooks and web applications built with ipywidgets, by offering a declarative approach to state and UI management. It aims to simplify complex UI logic, reduce boilerplate, and enhance maintainability, serving as a foundation for frameworks like Solara. The current version is 1.9.1, with updates released on a feature-ready basis rather than a strict cadence.","language":"python","status":"active","last_verified":"Thu Apr 16","install":{"commands":["pip install reacton"],"cli":null},"imports":["import reacton\n@reacton.component","import reacton\nclicks, set_clicks = reacton.use_state(0)","import reacton.ipywidgets as w"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import reacton\nimport reacton.ipywidgets as w\nfrom IPython.display import display\n\n@reacton.component\ndef ButtonClick():\n    clicks, set_clicks = reacton.use_state(0)\n\n    def my_click_handler():\n        set_clicks(clicks + 1)\n\n    button = w.Button(\n        description=f\"Clicked {clicks} times\",\n        on_click=my_click_handler\n    )\n    return button\n\ndisplay(ButtonClick())","lang":"python","description":"This example creates a simple button component that updates its click count using Reacton's `use_state` hook and a declarative approach to UI rendering within a Jupyter environment.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}