JavaScript and TypeScript finite state machines and statecharts for the modern web.
💙 Explore our catalogue of examples
🖥 Download our VS Code extension
📑 Adheres to the SCXML specification
💬 Chat on the Stately Discord Community
Packages
- 🤖
xstate- Core finite state machine and statecharts library + interpreter - 🔬
@xstate/fsm- Minimal finite state machine library - 📉
@xstate/graph- Graph traversal utilities for XState - ⚛️
@xstate/react- React hooks and utilities for using XState in React applications - 💚
@xstate/vue- Vue composition functions and utilities for using XState in Vue applications - 🎷
@xstate/svelte- Svelte utilities for using XState in Svelte applications - ✅
@xstate/test- Model-Based-Testing utilities (using XState) for testing any software - 🔍
@xstate/inspect- Inspection utilities for XState
Templates
Get started by forking one of these templates on CodeSandbox:
- XState Template - no framework
- XState + TypeScript Template - no framework
- XState + React Template
- XState + React + TypeScript Template
- XState + Vue Template
- XState + Vue 3 Template
- XState + Svelte Template
Visualize, simulate, inspect, and share your statecharts in XState Viz

