Aurora Scharff
Building Interactive Async UI with React 19 and Ariakit
#1about 1 minute
Challenges of building custom interactive UI components
Three common problems are outlined: building custom UI from scratch, ensuring accessibility without being an expert, and handling async operations smoothly.
#2about 1 minute
Solving UI challenges with a modern tech stack
The solution involves using Tailwind CSS for styling, Ariakit for accessible component primitives, and React 19 features for managing asynchronous operations.
#3about 4 minutes
Analyzing the initial flawed component and its code
A demonstration and code walkthrough reveal a custom dropdown with accessibility issues, complex state management, and out-of-sync pending states.
#4about 7 minutes
Refactoring the UI with Ariakit for accessibility
The component is refactored by replacing standard divs with Ariakit's `Select` primitives, which automatically handle state, keyboard navigation, and ARIA attributes.
#5about 2 minutes
Managing async state with React 19 hooks
The component's asynchronous logic is improved by replacing manual pending states with `useTransition` and `useOptimistic` for smooth, instant UI feedback and automatic rollbacks.
#6about 4 minutes
Simplifying data updates with server functions
The traditional API layer is removed and replaced with React Server Functions, enabling direct, type-safe server calls from the client component.
#7about 2 minutes
Demonstrating the final interactive and accessible component
The final result is a fully interactive, accessible, and user-friendly dropdown component with smooth pending states and optimistic updates, built with minimal boilerplate.
#8about 3 minutes
Summary of benefits from Ariakit and React 19
A recap of how Ariakit provides accessibility and clean code, while React 19 streamlines server communication and simplifies loading states for a better user experience.
Related jobs
Jobs that call for the skills explored in this talk.
Douglas GmbH
Düsseldorf, Germany
Intermediate
Senior
TypeScript
React
Hubert Burda Media
München, Germany
€80-95K
Intermediate
Senior
JavaScript
Node.js
+1
ROSEN Technology and Research Center GmbH
Osnabrück, Germany
Senior
TypeScript
React
+3
Matching moments
04:56 MIN
Recreating React components using AI and dev tools
WeAreDevelopers LIVE – AI, Freelancing, Keeping Up with Tech and More
03:31 MIN
The value of progressive enhancement and semantic HTML
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
05:59 MIN
Building an accessible accordion with details and summary
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
09:00 MIN
Navigating the growing complexity of modern CSS
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
03:16 MIN
Improving the developer feedback loop with specialized tools
Developer Time Is Valuable - Use the Right Tools - Kilian Valkhof
02:33 MIN
Why you might not need JavaScript for everything
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
03:58 MIN
Making accessibility tooling actionable and encouraging
Developer Time Is Valuable - Use the Right Tools - Kilian Valkhof
06:17 MIN
Highlighting active sections with CSS scroll-driven animations
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
Featured Partners
Related Videos
Accessibility in React Application
Julia Undeutsch
What’s New and What’s Next in Web UI
Cleyra Uzcategui
From Zero to Hero: NextJS 13 and Tailwind CSS for Beginners
Marius Obert
Accessibility with Web Components
Manuel Mauky
ARIA: the good parts
Hidde de Vries
Challenges of building React and React Native apps
Milica Aleksic & Stefan Nikolic
Snappy UI needs no Single-Page Application
Clemens Helm
GraphQL + Apollo + Next.js: A Lovely Trio
Josh Goldberg
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.


Visonum GmbH
Remote
Junior
Intermediate
React
Redux
TypeScript

Twin.Link GmbH
Osnabrück, Germany
Intermediate
Senior
React
TypeScript



Multiplied
The Hague, Netherlands
Remote
Intermediate
API
CSS
HTML
React
+5



Optimus Search
Berlin, Germany
Remote
Intermediate
API
CSS
GIT
React
+4