{"id":16183715,"url":"https://github.com/josias-r/wpds-scripts","last_synced_at":"2025-04-07T18:47:27.783Z","repository":{"id":35095400,"uuid":"206065899","full_name":"josias-r/wpds-scripts","owner":"josias-r","description":"WordPack Dev Server scripts","archived":false,"fork":false,"pushed_at":"2025-03-06T16:21:30.000Z","size":361,"stargazers_count":1,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-12T10:16:52.886Z","etag":null,"topics":["hot-module-reloading","node-js","wordpress","wordpress-development","wpds-scripts"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/josias-r.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-09-03T11:55:26.000Z","updated_at":"2020-07-29T01:46:40.000Z","dependencies_parsed_at":"2023-01-15T13:45:07.144Z","dependency_job_id":null,"html_url":"https://github.com/josias-r/wpds-scripts","commit_stats":null,"previous_names":["josias-r/wptb-scripts"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josias-r%2Fwpds-scripts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josias-r%2Fwpds-scripts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josias-r%2Fwpds-scripts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josias-r%2Fwpds-scripts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/josias-r","download_url":"https://codeload.github.com/josias-r/wpds-scripts/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247713101,"owners_count":20983680,"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","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":["hot-module-reloading","node-js","wordpress","wordpress-development","wpds-scripts"],"created_at":"2024-10-10T07:06:15.756Z","updated_at":"2025-04-07T18:47:27.760Z","avatar_url":"https://github.com/josias-r.png","language":"JavaScript","readme":"# WordPack Dev Server\n\nDevelopment with WordPress made easy.\n\n### Features\n\n- **SCSS**: Modular CSS with variables and functions\n- **Modern JavaScript**: Write Javascript using the latest syntax.\n- **Modular JavaScript**: Split your JS files into multiple module files for better organization and import NPM libraries.\n- **HMR**: Watch your changes live getting hot reloaded while developing\n- **Browser support**: With the help of Babel and Browserslist everything will be compiled to support old Browsers\n- **Linters**: [Prettier](https://prettier.io/), [ESLint](https://eslint.org/) and [stylelint](https://stylelint.io/) will help you while developing. (Make sure you have the corresponding packages installed for your editor)\n  \u003e Note: You should install the corresponding packages for your Editor to make full use of this feature.\n\n  \u003e Note: I'm not following the WordPress Coding Standards for JS and CSS out of preference (I think they are outdated and rather use the recommended prettier/eslint configurations). You can always change that by updating the linter rc files.\n- **Customizable**: You have a lot of options you can configure. [see configuration](#cli-configuration)\n\n**Pro Tip:** Since wpds-scripts will open a proxy, you can even work on a webpage that is already online, as long as you are just changing static files, like JS and CSS.\n\n### CLI Configuration\n\n- `-p` or `--port`: _default_: `8080`\n  - The port on which you can preview your changes\n- `-h` or `--host`: _default_: `localhost`\n  - The host on which you can preview your changes\n- `-P` or `--proxy`: _default_: `http://localhost:8000`\n  - The URL (include _http://_) on which your local WordPress installation runs on.\n  - If you are only making small changes to an no-local website css and js should get hot-loaded anyway.\n- `--publicPath`: _default_: `/wp-content/themes/FOLDER_BASENAME`\n  - The path where your proxied files are available.\n\n### Config File Configuration\n\nTo configure wpds-scripts you need to create the `wpds-scripts.config.js` file inside your project root folder.\n\nInside it you can override the following options from the default config:\n\n```JavaScript\n{\n  verbose: false, // boolean -\u003e set to true to recieve more console logs\n  port: 8080, // number -\u003e dev server port\n  host: \"localhost\", // string -\u003e dev server hostname\n  proxy: \"http://localhost:8000\", // string -\u003e the URL to which the dev server will redirect to (include the http protocol!)\n  publicPath: `/wp-content/themes/${path.basename(process.cwd())}`, // string -\u003e the path where your files are exposed to public\n  entryFiles: [`${process.cwd()}/src/javascripts/main.js`], // array of strings -\u003e files which are getting bundled (import stylesheets from withing those files, don't load them here!)\n  customRules: [], // array -\u003e custom rules that should be added to webpack\n  customExternals: [], // array -\u003e custom external dependencies that webpack should ignore when bundling (@wordpress/** packages are already ignored)\n  customWebpackConfig: false, // object | false -\u003e object that will override the webpack config (only use this if the above configurations do not suffice!)\n  customWebpackDevConfig: false // object | false -\u003e object that will override the webpack dev server config (only use this if the above configurations do not suffice!)\n}\n```\n\n**Example:**\n\n```JavaScript\nmodule.exports = {\n  verbose: true,\n  port: 8081,\n}\n```\n\n\u003e Note: The CLI parameters will always override configuration from your `wpds-scripts.config.js` file.\n\n\u003e Note: wpds-scripts will use your `.babelrc`, `.eslintrc` and `.stylelintrc` when those files are present.\n\n## Donate\n\nYou can buy me a cup of coffee, if you'd like ^^\n\n[![Donate](https://www.paypalobjects.com/en_US/CH/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=AXJFXBX8XLYXQ\u0026source=url)\n","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=AXJFXBX8XLYXQ\u0026source=url"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjosias-r%2Fwpds-scripts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjosias-r%2Fwpds-scripts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjosias-r%2Fwpds-scripts/lists"}