This plugin is meant to serve as a container for most Newspack Gutenberg blocks. There may be certain blocks that relate to specific functionality in other plugins, in which case they would live with the primary functionality, but besides this exception most will live in this one.
To get set up for block development, run composer install && npm install
To generate a build of the current blocks, run npm run build
.
To clean out the built blocks, run npm run clean
.
To work on Block development and have Webpack watch your files for changes run: npm start
.
is performed on changed files before commiting. In other words, is run during pre-commit
git hook, but only on staged files. The hook is configured in composer.json
.
PHP | JS | SCSS | |
---|---|---|---|
tool | PHPCS | eslint | stylelint |
config | .phpcs.xml.dist |
.eslintrc.js |
.stylelintrc |
run manually | composer lint |
npm run lint:js |
npm run lint:scss |
autofix ✨ | ./vendor/bin/phpcbf <file> |
npm run lint:js -- --fix |
npm run lint:scss -- --fix |
To get started with a new block:
src/
index.js
and change name and title definitions.production
array in src/setup/blocks.json
$newspack_blocks_blocks
array in newspack-blocks.php
npm run build
. If all went smoothly, you should see a Newspack category in the block picker, and your block should appear within it.