Official Examples
Text Length Counter
- Derived atoms
- Basic state management
- Atom composition
Hacker News Reader
- Async data fetching
- State transitions
- Loading states
Todo Application
- Managing lists of items
- Filtering derived state
- User interactions
Todo with atomFamily & localStorage
atomFamily for dynamic atom creation and localStorage for persistence. Save your todo list to localStorage and restore it later.
Key Concepts:
atomFamilyfor dynamic atomsatomWithStoragefor persistence- Advanced state patterns
Clock with Next.js
- Next.js integration
- Server-side rendering
- Time-based state updates
Tic Tac Toe Game
- Game state management
- Turn-based logic
- Win condition checking
React Three Fiber Demo
- Integration with react-three-fiber
- 3D state management
- Animation state
Community Projects
Here are some real-world projects and companies using Jotai:Production Applications
Many companies and developers use Jotai in production applications for:- E-commerce platforms
- Dashboard applications
- Data visualization tools
- Mobile-first web applications
- Real-time collaboration tools
- Gaming interfaces
Open Source Projects
Jotai is used in various open source projects across the React ecosystem. Check out the GitHub topic to discover more projects using Jotai.Use Case Patterns
Form State Management
Jotai excels at managing complex form state with field-level subscriptions, reducing unnecessary re-renders.Global UI State
Manage modals, toasts, theme settings, and other UI state without prop drilling.Data Fetching
Combine with React Suspense for elegant loading states, or use with libraries likejotai-tanstack-query for advanced data fetching patterns.
Real-time Applications
Manage WebSocket connections and real-time data updates with atom subscriptions.State Machines
Implement state machines and complex workflows using atom composition.Contributing Your Project
Built something cool with Jotai? Share it with the community:- Open a PR to add your project to the showcase
- Share on Twitter with #jotai
- Join the Discord community
- Write a blog post about your experience