- Unpin the
@wordpress/scripts
version and set the minimum supported WordPress version to 6.6 (#64920).
- Pin the
@wordpress/scripts
version to a version supported by WordPress 6.5 (#62234).
- Increase the minimum required Node.js version to v20.10.0 matching the support defined for Gutenberg and WordPress core (#61430).
- Add new
namespacePascalCase
template variable (#60223).
- Add missing
viewScriptModule
field (#59140).
- Remove deprecated
viewModule
field (#59198).
- Add support for the
viewModule
property (#57712).
- Add new
transformer
property to external templates to allow customization of any values being passed from cli or the template.#55423
- Add support for the
example
property and add it to the default template (#52803).
- Add support for the
viewScript
property (#52612).
- Update templates to use the
render
field inblock.json
introduced in WordPress 6.1 (#44185).
- Add new
customPackageJSON
andcustomBlockJSON
keys to allow templates to define custom keys for the resultingpackage.json
andblock.json
files respectively.#44649
- Increase the minimum Node.js version to 14 and minimum npm version to 6.14.4 (#43141).
- Add
--no-plugin
flag to allow scaffolding of a block in an existing plugin (#41642) - Introduce the
--variant
flag to allow selection of a variant as defined in the template (#41289, #43481).
- Added prompt to continue when minimum system requirements not met (#42151).
- Read the block name from
block.json
file in JavaScript files (#41273).
- Fix the
.editorconfig
file include to work correctly with YAML files (#40994).
- Updated
commander
dependency from requiring^4.1.0
to^9.2.0
(#40927).
- Add
npmDevDependencies
template variable to allow definition ofdevDependencies
as part of a template (#39723).
- It is no longer mandatory to provide the deprecated
templatesPath
option when configuring the custom project template (#39049). - Custom project templates will use default template files during scaffolding for the WordPress plugin shell and/or individual blocks. It is possible to replace them with a custom set of template files by using the
pluginTemplatesPath
and/orblockTemplatesPath
options (#39049). - The default
esnext
project template got renamed tostatic
(#39049).
- Added CLI prompts for three additional plugin header fields:
Plugin URI
,Domain Path
, andUpdate URI
(#39096).
- To remove confusion when configuring custom project templates, the
templatesPath
option got renamed topluginTemplatesPath
. The old name still works but is considered deprecated, and it might get removed in the future (#39049).
- Include a missing note on how to create a zip file for a WordPress plugin (#39049)
- Automatically add a
"env": "wp-env"
entry to scripts when the--wp-env
is passed or when a template setswpEnv
totrue
(#38530). - Introduce the
customScripts
property to allow templates to define additional scripts (#38535).
- Integrated a new
plugin-zip
command to create a zip file for a WordPress plugin (#37687). - Add support for handling block templates with the
blockTemplatesPath
field in the external template configuration (#37612). - Add a new field
folderName
for setting the location for theblock.json
file and other optional block files generated from block templates included in the folder set with theblockTemplatesPath
setting (#37612).
- Speed up scaffolding process by omitting WordPress dependencies in the template (#37639).
- Update link to block registration reference (#37674)
- The bundled
npm-package-arg
dependency has been updated from requiring^8.0.1
to requiring^8.1.5
(#37395).
- Add $schema definition to generated
block.json
file.
- Add passing local directories to --template. (#35645)
- Add
slugPascalCase
to the list of variables that can be used in templates (#35462)
- Add support for the new
version
field in theblock.json
metadata file (#33075).
- Plugin scaffolded with the
esnext
template requires WordPress 5.8 now (#33252. - Block scaffolded with the
esnext
template is now registered fromblock.json
with theregister_block_type
helper (#33252).
- Rename
format:js
script toformat
(#30240). - Updated
.editorconfig
template files to work with automatic file formatting (#30794).
- Scaffolded plugin requires WordPress 5.7 now (#29757).
- Add new
theme
category to select for the block type (#30089).
- Add a way to provide a default value in the template for
attributes
andsupports
Block API fields (#28883).
- Block scaffolded with
esnext
template is now registered fromblock.json
with theregister_block_type_from_metadata
helper (#28883).
- Updated
check-node-version
to version^4.1.0
that no longer processes unrelated engines (#29066). - Fixed the background color used in the CSS file that was invalid on the front-end.
- Extract the package name from the value passed as an external template (#28383).
- Increase the minimum Node.js version to 12 (#27934).
- Add support for handling static assets with the
assetsPath
field in the external template configuration (#28038). - Allow using locally installed packages with templates (#28105).
- Add new CLI option
--wp-env
that lets users override the setting that template defines for integration with@wordpress/env
package (#28234).
- Update the demo included in the README file (#28037).
- Adds the
npmDependencies
field to the template configuration. It allows listing remote npm dependencies that will be installed in the scaffolded project (#27880). - Installs WordPress npm dependencies used in the
esnext
template during the scaffolding process (#27880).
- Print the block class name in the
save
method in scaffolded templates (#27988).
- Second attempt to fix support for external templates by using a temporary folder when downloading npm package.
- Fix support for external templates hosted on npm.
- Set the minimum required version of WordPress to 5.6.0 to ensure that block is correctly registered with the Block API version 2 (#26098).
- Added basic support for external templates hosted on npm (#23712).
- Update templates to work with the Block API version 2 (#26098).
- Update the list of available block categories to align with changes introduced in WordPress 5.5.0 (https://make.wordpress.org/core/2020/07/30/block-api-updates-in-5-5/).
- Set the minimum required version of WordPress to 5.5.0 to ensure that block is correctly registered with new block categories.
- Generate
block.json
file with all metadata necessary for Block Directory (#23399).
- Fix the error in the scaffolding process caused by the missing
scripts
section inpackage.json
file (#23443).
- Add new CLI options:
--no-wp-scripts
and--wp-scripts
to let users override the settings that template defines for supports for@wordpress/scripts
package integration (#23195).
- Fix errors reported by CSS linter in ESNext template by using hex colors in CSS files (#23188).
- Fix an error reported by JavaScript linter by improving JSDoc comment in ESNext template in
src/edit.js
file (#23164).
- Update
esnext
(default) template to leverage CSS import in JavaScript support added to@wordpress/scripts
(#22727).
- Refactored handling of predefined block templates #22235.
- Add more CLI options:
--namespace
,--title
,--short-description
and--category
. The goal is to make it easier to override default values used for scaffolding (#21751).
- Update
esnext
(default) template to scaffold 3 JavaScript source files to illustrate how ES modules help to better organize code (#21750).
- Added readme.txt file to the existing templates to make your entry in the plugin browser most useful (#20694).
- Added prompts for the
author
,license
andversion
of the plugin (#20694).
- Make
version
prompt mandatory and provide validation against semantic versioning (#20756). - Omit optional values in the scaffolded files when they aren't provided (#20756).
- Fixed buggy check for minimum system requirements when run with
npx
andnpm init
(#20461).
- Added error message when minimum system requirements not met (#20398).
- Corrected the minimum
npm
version required to align with@wordpress/scripts
package used internally (#20398).
- Added support for
format:js
script to the block scaffolded with ESNext template (#20335).
- Removed the code that clears the terminal while the block is scaffolded (#19867).
- Use the description provided to fill the
description
field inpackage.json
file in ESNext template (#19867). - Ensure that values provided for slug and namespace get converted to lower case (#19867).
- Relocated npm packge from
create-wordpress-block
to@wordpress/create-block
(#19773).
- Update templates to include WordPress plugin metadata by default.
- Print available commands only for ESNext template.
- Add full support for ESNext template, including
wp-scripts
bootstrapping.
- Improve the feedback shared on the console while scaffolding a block.
- Fix the paths pointing to the JS build file listed in PHP file in the ESNext template.
- Added support for template types.
esnext
becomes the default one.es5
is still available as an option.