# React · Tech watch

[Canonical source](<https://sebastien.rigaux.be/en/tech-watch/tags/react/page/3>)

Building interfaces with React components, state and rendering behavior.

## [Puck: embed a visual editor in a React application](<https://sebastien.rigaux.be/en/tech-watch/links/puck-embed-a-visual-editor-in-a-react-application>)

Puck is a React component for building drag-and-drop editors with your own components. Its modular model leaves the application in control of data and composition rules.

2025-06-01 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/puck-embed-a-visual-editor-in-a-react-application.md>) · [Original resource](<https://github.com/puckeditor/puck>)

## [21st: explore React components, templates and themes](<https://sebastien.rigaux.be/en/tech-watch/links/21st-explore-react-components-templates-and-themes>)

21st collects interface components and blocks, including hero sections, cards and animated backgrounds. The catalogue supports comparing visual directions and finding a starting point to customize.

2025-05-08 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/21st-explore-react-components-templates-and-themes.md>) · [Original resource](<https://21st.dev/>)

## [Coss UI: a component library built on Base UI](<https://sebastien.rigaux.be/en/tech-watch/links/coss-ui-a-component-library-built-on-base-ui>)

The former Origin UI address now leads to coss ui and its component catalogue. Accordions, dialogs, fields and calendars provide shared building blocks for interfaces.

2025-05-08 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/coss-ui-a-component-library-built-on-base-ui.md>) · [Original resource](<https://coss.com/ui>)

## [PDFSlick: embed PDF navigation and tools in web applications](<https://sebastien.rigaux.be/en/tech-watch/links/pdfslick-embed-pdf-navigation-and-tools-in-web-applications>)

PDFSlick provides PDF viewer examples for React, Svelte, SolidJS and JavaScript. Navigation, thumbnails and zoom show how documents can become part of the application interface.

2025-05-04 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/pdfslick-embed-pdf-navigation-and-tools-in-web-applications.md>) · [Original resource](<https://pdfslick.dev/>)

## [Clarify React Query states with pattern matching](<https://sebastien.rigaux.be/en/tech-watch/links/clarify-react-query-states-with-pattern-matching>)

Gabriel Pichot organizes loading, error, success and empty states with pattern matching. The approach reduces scattered branches in components and improves readability.

2025-04-24 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/clarify-react-query-states-with-pattern-matching.md>) · [Original resource](<https://www.gabrielpichot.fr/blog/simplify-tanstack-react-query-state-handling-with-pattern-matching/>)

## [React Agent Hooks: expose interface state to agents](<https://sebastien.rigaux.be/en/tech-watch/links/react-agent-hooks-expose-interface-state-to-agents>)

This library derives LLM tools from React hooks. Human and agent interfaces can share the same state, with a developer-defined schema controlling state changes.

2025-04-20 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/react-agent-hooks-expose-interface-state-to-agents.md>) · [Original resource](<https://github.com/chuanqisun/react-agent-hooks>)

## [Build a React chat with streaming responses](<https://sebastien.rigaux.be/en/tech-watch/links/build-a-react-chat-with-streaming-responses>)

Robin Wieruch builds a Next.js chat connected to the OpenAI API, from the server route to the interface. The tutorial adds streaming to display responses progressively.

2025-04-20 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/build-a-react-chat-with-streaming-responses.md>) · [Original resource](<https://www.robinwieruch.de/react-ai-chat/>)

## [Omlet: inspect component and prop usage](<https://sebastien.rigaux.be/en/tech-watch/links/omlet-inspect-component-and-prop-usage>)

Omlet shows component usage and supplied prop values inside VS Code. These insights help teams understand actual library adoption before changing components.

2025-03-20 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/omlet-inspect-component-and-prop-usage.md>) · [Original resource](<https://marketplace.visualstudio.com/items?itemName=Omlet.omlet-vscode-extension>)

## [A collection of React libraries for animated interfaces](<https://sebastien.rigaux.be/en/tech-watch/links/a-collection-of-react-libraries-for-animated-interfaces>)

This repository collects React component libraries and design systems with animation capabilities. It provides a starting point for comparing their approaches and demos.

2025-02-26 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/a-collection-of-react-libraries-for-animated-interfaces.md>) · [Original resource](<https://github.com/sanjay10985/animated-react-collection>)

## [Made with React: discover ecosystem projects and components](<https://sebastien.rigaux.be/en/tech-watch/links/made-with-react-discover-ecosystem-projects-and-components>)

This catalogue presents applications, components, frameworks and tools built around React. Categories make it easier to find examples and libraries to investigate.

2025-02-25 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/made-with-react-discover-ecosystem-projects-and-components.md>) · [Original resource](<https://madewithreactjs.com/>)

## [Type a polymorphic as prop in a React component](<https://sebastien.rigaux.be/en/tech-watch/links/type-a-polymorphic-as-prop-in-a-react-component>)

This tutorial builds an as prop that changes the rendered HTML element while preserving valid property types. TypeScript generics help prevent attributes from leaking between different tags.

2025-02-22 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/type-a-polymorphic-as-prop-in-a-react-component.md>) · [Original resource](<https://christianvm.dev/blog/react-as-prop>)

## [Motion Primitives: compose interfaces with adjustable animations](<https://sebastien.rigaux.be/en/tech-watch/links/motion-primitives-compose-interfaces-with-adjustable-animations>)

This collection provides animated interface components to copy and customize. Demos cover text effects and transitions for enhancing existing interactions.

2025-02-20 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/motion-primitives-compose-interfaces-with-adjustable-animations.md>) · [Original resource](<https://motion-primitives.com/>)

## [React Bits: customize animated components from source](<https://sebastien.rigaux.be/en/tech-watch/links/react-bits-customize-animated-components-from-source>)

React Bits collects backgrounds, text effects and interactive components installed as source code. Exposed parameters let developers tune motion and appearance for their project.

2025-02-15 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/react-bits-customize-animated-components-from-source.md>) · [Original resource](<https://reactbits.dev/>)

## [Normy: normalize data to simplify cache updates](<https://sebastien.rigaux.be/en/tech-watch/links/normy-normalize-data-to-simplify-cache-updates>)

Normy normalizes data fetched through libraries such as React Query or SWR. Shared entities can then update across cached results without repeating synchronization logic.

2025-01-07 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/normy-normalize-data-to-simplify-cache-updates.md>) · [Original resource](<https://github.com/klis87/normy>)

## [Float: configure a floating animation in React](<https://sebastien.rigaux.be/en/tech-watch/links/float-configure-a-floating-animation-in-react>)

The component animates movement and rotation using sine waves. Amplitude, speed and time offsets let you tune the effect and desynchronize multiple elements.

2025-01-05 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/float-configure-a-floating-animation-in-react.md>) · [Original resource](<https://www.fancycomponents.dev/docs/components/blocks/float>)

## [ESLint React Hooks: check React rules in your code](<https://sebastien.rigaux.be/en/tech-watch/links/eslint-react-hooks-check-react-rules-in-your-code>)

The official plugin provides React lint rules and a recommended ESLint configuration. Its documentation covers setup and options for experimental compiler rules.

2024-12-23 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/eslint-react-hooks-check-react-rules-in-your-code.md>) · [Original resource](<https://www.npmjs.com/package/eslint-plugin-react-hooks>)

## [React Scan: visually locate costly renders](<https://sebastien.rigaux.be/en/tech-watch/links/react-scan-visually-locate-costly-renders>)

React Scan highlights components worth inspecting for performance problems. Script and package integrations support an initial diagnosis without rewriting application components.

2024-11-24 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/react-scan-visually-locate-costly-renders.md>) · [Original resource](<https://react-scan.com/>)

## [Manage advanced URL filters in the Next.js App Router](<https://sebastien.rigaux.be/en/tech-watch/links/manage-advanced-url-filters-in-the-next-js-app-router>)

Aurora Scharff uses URL parameters as the source of truth for filtering, sorting and pagination. The article covers coordinating that state with interactions and Server Components.

2024-11-07 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/manage-advanced-url-filters-in-the-next-js-app-router.md>) · [Original resource](<https://aurorascharff.no/posts/managing-advanced-search-param-filtering-next-app-router/>)

## [Click to Component: open React source from the browser](<https://sebastien.rigaux.be/en/tech-watch/links/click-to-component-open-react-source-from-the-browser>)

A click shortcut on a component opens its source file in the editor. A context menu also exposes parent components and props to help locate the relevant code.

2024-11-07 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/click-to-component-open-react-source-from-the-browser.md>) · [Original resource](<https://github.com/ericclemmons/click-to-component>)

## [Nuqs: synchronize React state with URL parameters](<https://sebastien.rigaux.be/en/tech-watch/links/nuqs-synchronize-react-state-with-url-parameters>)

Nuqs offers a useState-like API with typed parsers and history controls. It makes filters shareable and reloadable by keeping their state in the URL.

2024-11-04 · [Markdown](<https://sebastien.rigaux.be/en/tech-watch/links/nuqs-synchronize-react-state-with-url-parameters.md>) · [Original resource](<https://nuqs.dev/>)

Page 3 / 4

[Previous](<https://sebastien.rigaux.be/en/tech-watch/tags/react/page/2>)

[Next](<https://sebastien.rigaux.be/en/tech-watch/tags/react/page/4>)
