Interactivity API
Warning
This package is only available in Gutenberg at the moment and not in WordPress Core as it is still very experimental, and very likely to change.
Note
This package enables the API shared at Proposal: The Interactivity API – A better developer experience in building interactive blocks. As part of an Open Source project we encourage participation in helping shape this API and the discussions in GitHub is the best place to engage.
This package can be tested, but it's still very experimental.
The Interactivity API is being used in some core blocks but its use is still very limited.
Frequently Asked Questions
At this point, some of the questions you have about the Interactivity API may be:
What is this?
This is the base of a new standard to create interactive blocks. Read the proposal to learn more about this.
Can I use it?
You can test it, but it's still very experimental.
How do I get started?
The best place to start with the Interactivity API is this Getting started guide. There you'll will find a very quick start guide and the current requirements of the Interactivity API.
Where can I ask questions?
The “Interactivity API” category in Gutenberg repo discussions is the best place to ask questions about the Interactivity API.
Where can I share my feedback about the API?
The “Interactivity API” category in Gutenberg repo discussions is also the best place to share your feedback about the Interactivity API.
Installation
Install the module:
npm install @wordpress/interactivity --save
This package assumes that your code will run in an ES2015+ environment. If you're using an environment that has limited or no support for such language features and APIs, you should include the polyfill shipped in @wordpress/babel-preset-default
in your code.
Docs & Examples
Interactivity API Documentation is the best place to learn about this proposal. Although it's still in progress, some key pages are already available:
- Getting Started Guide: Follow this Getting Started guide to learn how to scaffold a new project and create your first interactive blocks.
- API Reference: Check this page for technical detailed explanations and examples of the directives and the store.
Here you have some more resources to learn/read more about the Interactivity API: