A React hooks API implementation for PureScript's react-basic library, supporting React 16.8 through 19.
react-basic-hooks is a PureScript library that implements React's hooks API on top of the react-basic library. It provides type-safe bindings for all React hooks from version 16.8 through 19, allowing PureScript developers to build React applications using modern functional patterns and concurrent features.
PureScript developers building React applications who want to use hooks, concurrent features, and React 19 APIs while maintaining type safety and functional programming practices.
It offers a fully typed, comprehensive hooks API that seamlessly integrates with PureScript's react-basic, enabling developers to leverage React's latest features without sacrificing the language's strong type system and functional paradigms.
An implementation of React hooks on top of purescript-react-basic
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements all React hooks from version 16.8 through 19, including useOptimistic and useActionState, enabling PureScript developers to leverage the latest React features with type safety.
Provides a fully typed interface that integrates seamlessly with PureScript's functional patterns, reducing runtime errors and improving code maintainability, as evidenced by the qualified do syntax usage in examples.
Includes Aff-based hooks like useAffActionState for managing asynchronous effects naturally within PureScript's Aff monad, making async code more idiomatic and less error-prone.
Offers permalink variants such as useActionStateWithPermalink, enabling forms to function without JavaScript for better accessibility and fallback, aligning with modern web standards.
Relies entirely on PureScript and react-basic, limiting community support, third-party resources, and hiring pools compared to mainstream JavaScript or TypeScript React ecosystems.
Some hooks, like useEffectEvent, are based on React's experimental APIs, which may lead to breaking changes or deprecation as React evolves, requiring ongoing maintenance.
Requires PureScript compilation, qualified do syntax (available from compiler 0.12.2), and integration with react-basic, adding overhead to project setup and development workflow.