{"id":28393667,"url":"https://github.com/thewebsolver/create-wordpress-project","last_synced_at":"2026-04-18T01:04:07.755Z","repository":{"id":193844735,"uuid":"463502808","full_name":"TheWebSolver/create-wordpress-project","owner":"TheWebSolver","description":"Create WordPress Project is a modern WordPress development and production toolkit with build process to code-sniff PHP, Style and Scripts. Also, minifies CSS and JS, generates .pot translate file and many more.","archived":false,"fork":false,"pushed_at":"2022-06-07T06:20:34.000Z","size":138,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-26T11:43:57.520Z","etag":null,"topics":["bootstrap","build-tool","development-tool","interactive","wordpress","wordpress-plugin-development","wordpress-theme-development"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TheWebSolver.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2022-02-25T11:11:00.000Z","updated_at":"2022-11-01T10:34:11.000Z","dependencies_parsed_at":"2023-09-10T11:35:49.759Z","dependency_job_id":null,"html_url":"https://github.com/TheWebSolver/create-wordpress-project","commit_stats":null,"previous_names":["thewebsolver/create-wordpress-project"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TheWebSolver/create-wordpress-project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheWebSolver%2Fcreate-wordpress-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheWebSolver%2Fcreate-wordpress-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheWebSolver%2Fcreate-wordpress-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheWebSolver%2Fcreate-wordpress-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TheWebSolver","download_url":"https://codeload.github.com/TheWebSolver/create-wordpress-project/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheWebSolver%2Fcreate-wordpress-project/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267298755,"owners_count":24065888,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-27T02:00:11.917Z","response_time":82,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bootstrap","build-tool","development-tool","interactive","wordpress","wordpress-plugin-development","wordpress-theme-development"],"created_at":"2025-05-31T16:39:16.848Z","updated_at":"2026-04-18T01:04:02.725Z","avatar_url":"https://github.com/TheWebSolver.png","language":"JavaScript","readme":"## Introduction:\n\nCreate WordPress Project is a modern WordPress development and production toolkit.\n\n### Features\n- Code-sniffs **PHP** with WordPress [PHP][p] Coding Standards,\n- Lints **Style** with [WordPress Stylelint Config][c] \u0026 **Scripts** with  [WordPress ESLint Plugin][j],\n- Minifies **[CSS][cn]/[JS][ju]/[Image][i]** files,\n- Generates **[translate][pot]** (**.pot**) file,\n- Autoloads **Classes**, **Traits** \u0026 **Interfaces** using [Autoloader][a],\n- Prepares **[string][s]** such as namespace, action/filter tags, etc. for branding purposes.\n\n## Documentation:\n\n### Getting Started\n\n1. #### Setup Config\n\t- Do not edit [config.default.json][defcnf] directly.\n\t- Any changes to be overridden must be done in [config.user.json][usrcnf] JSON file.\n\t- Necessary comments are in place for easier understanding.\n\t- The [user configuration][usrcnf] file contains following data:\n\n\t```json\n\t{\n\t\t// Strings to be replaced during project export.\n\t\t\"core\": {\n\t\t\t// Plugin/theme name. Replaces default \"TheWebSolver Codegarage\".\n\t\t\t\"name\": \"Awesome WordPress Plugin\",\n\n\t\t\t// Don't use hyphens if theme project. Replaces default \"tws-codegarage\".\n\t\t\t// Will be the plugin/theme directory name, plugin main filename and text-domain.\n\t\t\t\"slug\": \"awesome-plugin\",\n\n\t\t\t// Author name. Replaces default \"Shesh Ghimire\".\n\t\t\t\"author\": \"Awesome Person\",\n\n\t\t\t// Namespace and @package prefixes. Replaces default \"TheWebSolver\\\\Codegarage\".\n\t\t\t\"PHPNamespace\": \"Awesome\\\\Plugin\",\n\n\t\t\t// Underscore case prefix. Used widely as project prefix.\n\t\t\t// Used for action and filter tags. Replaces default \"tws_codegarage\".\n\t\t\t\"underscoreCase\": \"awesome_plugin\",\n\n\t\t\t// Camel case prefix. May be used on scripts. Replaces default \"twsCodeGarage\".\n\t\t\t\"camelCase\": \"awesomePlugin\",\n\n\t\t\t// Constants prefix. Replaces default \"TWS_CODEGARAGE\".\n\t\t\t\"constant\": \"AWE_PLUG\",\n\n\t\t\t// White label prefix. May be used on styles. Can be used elsewhere.\n\t\t\t// Replaces default \"tws-whitelabel\".\n\t\t\t\"whiteLabel\": \"custom-prefix\"\n\t\t},\n\n\t\t\"dev\": {\n\t\t\t\"browserSync\": {\n\t\t\t\t// Enable live reloading on each file save.\n\t\t\t\t\"live\": true,\n\n\t\t\t\t// The development URL where the project is being developed.\n\t\t\t\t\"proxyURL\": \"http://test.tws/\",\n\n\t\t\t\t// The port where browser sync will proxy the development URL.\n\t\t\t\t\"bypassPort\": \"8181\",\n\n\t\t\t\t// Enable/disable https.\n\t\t\t\t\"https\": false\n\t\t\t},\n\n\t\t\t\"debug\": {\n\t\t\t\t// If set to true, no minification happens.\n\t\t\t\t\"styles\": false,\n\t\t\t\t\"scripts\": false,\n\n\t\t\t\t// If set to false, PHPCS won't run.\n\t\t\t\t\"phpcs\": true\n\t\t\t},\n\n\t\t\t// Path to PHP Code-sniffer installed globally as Composer dev dependency.\n\t\t\t// Locally installed PHPCS is used (if exists).\n\t\t\t// Local PHPCS is defined in `./gulp/constants.js` as const \"phpcsLocalPath\".\n\t\t\t\"phpcsPath\": \"Awesome\\\\Plugin\\\\Path\\\\To\\\\Composer\\\\vendor\\\\bin\\\\phpcs\"\n\t\t},\n\n\t\t\"export\": {\n\t\t\t// Whether current project is a theme.\n\t\t\t\"isTheme\": false,\n\n\t\t\t// Whether to log messages on console during development/production.\n\t\t\t// Recommended to set it to true to see the progress.\n\t\t\t\"log\": true\n\t\t}\n\t}\n\t```\n\n2. #### Start Installation\n\tInstall node modules and composer packages. You can install it separately or use the npm script to do that.\n\n\tFrom terminal, enter:\n\t```sh\n\t$ npm run toolkit-init\n\t```\n\n3. #### Bootstrap Project\n\tTo define the project and start development process, enter:\n\t```sh\n\t$ npm run create-wp-project\n\t```\n\n\tThis will extract appropriate files for the current project from the [***bin***][bin] directory. i.e. If `isTheme` is set to `true` in [user config][usrcnf] file, [theme files][tf] will be extracted, else [plugin files][pf] will be extracted to the root directory of the project.\n\n\tAlternatively, following commands can be used for:\n\t- Theme project:\n\t\t```sh\n\t\tnpm run create-wp-theme\n\t\t```\n\n\t- Plugin project:\n\t\t```sh\n\t\tnpm run create-wp-plugin\n\t\t```\n\n4. #### Check PHPCS Path\n\tMake sure that **PHPCS** path exists either globally or locally to start dev process.\n\n5. #### Start Development\n\tOnce everything is set-up and main project files are extracted, then it's time to start the development process.\n\n\tFrom terminal, enter:\n\t```sh\n\t$ npm run dev\n\t```\n\n\tDuring development, following tasks are executed:\n\t- Code sniffing (PHP files) and linting (style and script files)\n\t- Minification (style and script files)\n\t- Compression (images)\n\t- Translation `.pot` file\n\n6. #### Export Project\n\tFrom terminal, enter:\n\t```sh\n\t$ npm run bundle\n\t```\n\n\t- Project can be exported multiple times.\n\t- On each subsequent export, directory gets deleted and everything gets exported again.\n\n### Further Resources\n- [GitHub Wiki][w]\n\n## Toolkit Plugins:\n| [Gulp]      | [Webpack] | [Autoloader][a] |\n|-------------|-----------|------------|\n| \u003cimg src=\"https://upload.wikimedia.org/wikipedia/commons/7/72/Gulp.js_Logo.svg\" height=\"100px\" /\u003e | \u003cimg src=\"https://raw.githubusercontent.com/webpack/media/3e52c178e6ad2428585a2cbf5d22d6dbe0697f0f/logo/icon-square-small.svg\" height=\"100px\" /\u003e | \u003cimg src=\"https://avatars.githubusercontent.com/u/71939933?s=200\u0026v=4\" height=\"100px\" /\u003e |\n| [Task Runner][t]                 | [File Bundler][b]             | [Classes \u0026 Template files][a] |\n| - Watch files during development | - Bundle javascript files     | - Load Classes, Traits, etc. |\n| - Export project files           | - Mainly for gutenberg blocks | - Expose Template [API][api] |\n\n\u003c!-- MARKDOWN LINKS --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n[w]: https://github.com/TheWebSolver/create-wordpress-project/wiki 'Link to Wiki page'\n[p]: https://developer.wordpress.org/coding-standards/wordpress-coding-standards/php/ 'Docs link to WordPress PHP Coding Standards'\n[c]: https://developer.wordpress.org/block-editor/reference-guides/packages/packages-stylelint-config/ 'Docs link to WordPress Stylelint Config'\n[j]: https://developer.wordpress.org/block-editor/reference-guides/packages/packages-eslint-plugin/ 'Docs link to WordPress ESLint Plugin'\n[cn]: https://cssnano.co/docs/introduction/ 'Docs link to CSSNano'\n[ju]: https://github.com/mishoo/UglifyJS 'GitHub link to UglifyJS'\n[i]: https://github.com/imagemin/imagemin 'GitHub link to ImageMin'\n[pot]: https://github.com/wp-pot/wp-pot 'GitHub link to WP-Pot'\n[a]: /autoload.php 'The Autoloader class file'\n[s]: https://github.com/tomaszczechowski/gulp-string-replace 'GitHub link to stringReplace'\n[gulp]: https://gulpjs.com/ 'Link to gulp homepage'\n[webpack]: https://webpack.js.org/ 'Link to webpack homepage'\n[t]: /gulp 'The Gulp Directory'\n[b]: /gulp/webpack 'The Gulp Webpack Directory'\n[api]: https://github.com/TheWebSolver/create-wordpress-project/wiki/Template-API 'Link to Template API Wiki page'\n[usrcnf]: /config/config.user.json 'The user configuration file'\n[defcnf]: /config/config.default.json 'The default configuration file'\n[bin]: /bin 'The Bin directory'\n[tf]: /bin/theme 'The Theme files bin directory'\n[pf]: /bin/plugin 'The Plugin files bin directory'\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthewebsolver%2Fcreate-wordpress-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthewebsolver%2Fcreate-wordpress-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthewebsolver%2Fcreate-wordpress-project/lists"}