A startup kit for WordPress plugin developer
- WordPress Rest API
- WP-script Setup
- React
- React Router
- TypeScript
- Tailwind CSS [Nested + ]
- SCSS
- PostCSS
- Eslint
- WP-Data
- WP-Data Redux Store [Redux Saga, Generator function, Thunk, Saga Middleware]
- React Components
- React CRUD Operations - Create, Read, Update, Delete, Status changes and so many...
- Internationalization - WP i18n
- PHPUnit Test [Test + Fix]
- JestUnit Test
- WordPress Playwright e2e Test
- PHP OOP plugin architecture [Traits + Interfaces + Abstract Classes]
- Gutenberg blocks, Dynamic blocks
# Clone the Git repository
git clone https://github.com/therakib7/wp-plugin-kit.git
# Install PHP-composer dependencies [It's empty]
composer install
# Install node module packages
npm i
# Start development mode
npm start
# Start development with hot reload (Frontend components will be updated automatically if any changes are made)
npm run start:hot
# To run in production
npm run buildAfter running start, or build command, there will be a folder called /build will be generated at the root directory.
You need activate the plugin from plugin list page.
# One by one.
npm run build
npm run makepot
npm run version
npm run zip
# Single release command - which actually will run the above all in single command.
npm run releaseAfter running release command, there will be a folder called /dist will be generated at the root directory with wp-plugin-kit.zip project files.
wp wp_plugin_kit_refreshBefore run test, check file wp-config from /tests/phpunit
composer run testcomposer run test:allnpm run test:unitGet all errors of the project:
composer run phpcsFix all errors of the project:
composer run phpcs:fixFull Composer test run:
composer run test:allFormat code according to WordPress standards:
npm run formatLinting JavaScript:
npm run lint:jsLinting CSS:
npm run lint:cssLinting Markdown (Docs):
npm run lint:md:docsTo Update NPM Packages:
npm run packages-updateEnsure licenses compatibility:
npm run check-licensesPlaywright doc link: https://playwright.dev/docs/running-tests
Requirements:
Must have docker installed and running by ensuring these commands
npm run env:stop
npm run env:startNormal e2e test:
npm run test:e2eInteractive e2e test:
npm run test:e2e:watchFor more about e2e Tests running please check - https://playwright.dev/docs/running-tests