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.
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.
At this point, some of the questions you have about the Interactivity API may be:
This is the base of a new standard to create interactive blocks. Read the proposal to learn more about this.
You can test it, but it’s still very experimental.
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.
The “Interactivity API” category in Gutenberg repo discussions is the best place to ask questions about the Interactivity API.
The “Interactivity API” category in Gutenberg repo discussions is also the best place to share your feedback about the Interactivity API.
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.
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: