This example demonstrates how to create a modern WordPress block using ESNext (modern JavaScript) and JSX syntax. It showcases the fundamental setup required for block development with a build process powered by @wordpress/scripts, which handles all the necessary tooling configuration.
Key concepts covered:
- Modern JavaScript (ESNext) and JSX syntax usage
- Build process setup with
@wordpress/scripts - Basic block registration and rendering
- Static block implementation
- NPM scripts for development and production builds
| Example | Description | Tags | Download .zip | Live Demo |
|---|---|---|---|---|
| Basic ESNext | Demonstrates how to create a basic block using modern JavaScript (ESNext) and JSX syntax with a build process powered by @wordpress/scripts. | minimal |
📦 |
-
Development Mode
- Uses
npm startfor development - Provides hot reloading
- Generates source maps for debugging
- Watches for file changes
- Uses
-
Production Build
- Uses
npm run buildfor production - Optimizes and minifies code
- Generates production-ready assets
- Performs tree shaking
- Uses
-
Block Registration
- Block metadata defined in
block.json - Registered using
registerBlockType - Uses modern ESNext syntax for cleaner code
- Block metadata defined in
-
Rendering
- Static block implementation in
save.js - Uses JSX for template rendering
- Implements
useBlockPropsfor block attributes
- Static block implementation in
src/
├── edit.js # Block editor component
├── save.js # Saved content component
├── style.scss # Frontend & editor styles
├── editor.scss # Editor-only styles
├── block.json # Block metadata
└── index.js # Block registration
- Block Editor Handbook - Getting Started
- ESNext Standard
- Block Registration API
- @wordpress/scripts Package
- Static vs Dynamic Blocks
- Block Metadata
Note Check the Start Guide for local development with the examples