payload: {"action":"closed","number":266,"pull_request":{"url":"https://api.github.com/repos/adobe/aem-project-archetype/pulls/266","id":333867409,"node_id":"MDExOlB1bGxSZXF1ZXN0MzMzODY3NDA5","html_url":"https://github.com/adobe/aem-project-archetype/pull/266","diff_url":"https://github.com/adobe/aem-project-archetype/pull/266.diff","patch_url":"https://github.com/adobe/aem-project-archetype/pull/266.patch","issue_url":"https://api.github.com/repos/adobe/aem-project-archetype/issues/266","number":266,"state":"closed","locked":false,"title":"Static Webpack Dev Server","user":{"login":"godanny86","id":8974514,"node_id":"MDQ6VXNlcjg5NzQ1MTQ=","avatar_url":"https://avatars1.githubusercontent.com/u/8974514?v=4","gravatar_id":"","url":"https://api.github.com/users/godanny86","html_url":"https://github.com/godanny86","followers_url":"https://api.github.com/users/godanny86/followers","following_url":"https://api.github.com/users/godanny86/following{/other_user}","gists_url":"https://api.github.com/users/godanny86/gists{/gist_id}","starred_url":"https://api.github.com/users/godanny86/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/godanny86/subscriptions","organizations_url":"https://api.github.com/users/godanny86/orgs","repos_url":"https://api.github.com/users/godanny86/repos","events_url":"https://api.github.com/users/godanny86/events{/privacy}","received_events_url":"https://api.github.com/users/godanny86/received_events","type":"User","site_admin":false},"body":"## Description\r\n\r\nProvides an initial implementation for issue #246 \r\n\r\nIncluded in the ui.frontend module is a [webpack-dev-server](https://github.com/webpack/webpack-dev-server) that provides live reloading for rapid front-end development outside of AEM. The setup leverages the [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) to automatically inject CSS and JS compiled from the ui.frontend module into a static HTML template.\r\n\r\n**Important files**\r\n\r\n* `ui.frontend/webpack.dev.js` - This contains the configuration for the webpack-dev-serve and points to the html template to use. It also contains a proxy configuration to an AEM instance running on `localhost:4502`.\r\n* `ui.frontend/src/main/webpack/static/index.html` - This is the static HTML that the server will run against. This allows a developer to make CSS/JS changes and see them immediately reflected in the markup. It is assumed that the markup placed in this file accurately reflects generated markup by AEM components. Note* that markup in this file does **not** get automatically synced with AEM component markup. This file also contains references to client libraries stored in AEM, like Core Component CSS and Responsive Grid CSS. The webpack development server is set up to proxy these CSS/JS includes from a local running AEM instance based on the configuration found in `ui.frontend/webpack.dev.js`.\r\n\r\n**Using**\r\n\r\n1. From within the root of the project run the command `mvn -PautoInstallSinglePackage clean install` to install the entire project to an AEM instance running at `localhost:4502`\r\n2. Navigate inside the `ui.frontend` folder.\r\n3. Run the following command `npm run start` to start the webpack dev server. Once started it should open a browser (localhost:8080 or the next available port).\r\n4. You can now modify CSS, JS, SCSS, and TS files and see the changes immediately reflected in the webpack dev server.\r\n\r\n## Motivation and Context\r\n\r\nThis allows a front end developer to develop CSS/JS against static markup, allowing the FED to be further de-coupled from AEM. The webpack dev server allows for live reloading of the browser for rapid development.\r\n\r\n## How Has This Been Tested?\r\n\r\nTested with local archetype setup.\r\n\r\n## Types of changes\r\n\r\n<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->\r\n\r\n- [ ] Bug fix (non-breaking change which fixes an issue)\r\n- [X] New feature (non-breaking change which adds functionality)\r\n- [ ] Breaking change (fix or feature that would cause existing functionality to change)\r\n\r\n## Checklist:\r\n\r\n<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->\r\n<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->\r\n\r\n- [X] I have signed the [Adobe Open Source CLA](http://opensource.adobe.com/cla.html).\r\n- [X] My code follows the code style of this project.\r\n- [X] My change requires a change to the documentation.\r\n- [ ] I have updated the documentation accordingly. (I updated the README.md)\r\n- [X] I have read the **CONTRIBUTING** document.\r\n- [ ] I have added tests to cover my changes.\r\n- [ ] All new and existing tests passed.","created_at":"2019-10-29T20:50:25Z","updated_at":"2019-10-31T13:38:37Z","closed_at":"2019-10-31T13:38:37Z","merged_at":"2019-10-31T13:38:36Z","merge_commit_sha":"b43691aa54ed57704979b6e19482866680f595ca","assignee":{"login":"bpauli","id":689884,"node_id":"MDQ6VXNlcjY4OTg4NA==","avatar_url":"https://avatars1.githubusercontent.com/u/689884?v=4","gravatar_id":"","url":"https://api.github.com/users/bpauli","html_url":"https://github.com/bpauli","followers_url":"https://api.github.com/users/bpauli/followers","following_url":"https://api.github.com/users/bpauli/following{/other_user}","gists_url":"https://api.github.com/users/bpauli/gists{/gist_id}","starred_url":"https://api.github.com/users/bpauli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bpauli/subscriptions","organizations_url":"https://api.github.com/users/bpauli/orgs","repos_url":"https://api.github.com/users/bpauli/repos","events_url":"https://api.github.com/users/bpauli/events{/privacy}","received_events_url":"https://api.github.com/users/bpauli/received_events","type":"User","site_admin":false},"assignees":[{"login":"bpauli","id":689884,"node_id":"MDQ6VXNlcjY4OTg4NA==","avatar_url":"https://avatars1.githubusercontent.com/u/689884?v=4","gravatar_id":"","url":"https://api.github.com/users/bpauli","html_url":"https://github.com/bpauli","followers_url":"https://api.github.com/users/bpauli/followers","following_url":"https://api.github.com/users/bpauli/following{/other_user}","gists_url":"https://api.github.com/users/bpauli/gists{/gist_id}","starred_url":"https://api.github.com/users/bpauli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bpauli/subscriptions","organizations_url":"https://api.github.com/users/bpauli/orgs","repos_url":"https://api.github.com/users/bpauli/repos","events_url":"https://api.github.com/users/bpauli/events{/privacy}","received_events_url":"https://api.github.com/users/bpauli/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":1304219350,"node_id":"MDU6TGFiZWwxMzA0MjE5MzUw","url":"https://api.github.com/repos/adobe/aem-project-archetype/labels/in%20review","name":"in review","color":"f9bc2e","default":false}],"milestone":{"url":"https://api.github.com/repos/adobe/aem-project-archetype/milestones/16","html_url":"https://github.com/adobe/aem-project-archetype/milestone/16","labels_url":"https://api.github.com/repos/adobe/aem-project-archetype/milestones/16/labels","id":4779776,"node_id":"MDk6TWlsZXN0b25lNDc3OTc3Ng==","number":16,"title":"22","description":"","creator":{"login":"gabrielwalt","id":130083,"node_id":"MDQ6VXNlcjEzMDA4Mw==","avatar_url":"https://avatars1.githubusercontent.com/u/130083?v=4","gravatar_id":"","url":"https://api.github.com/users/gabrielwalt","html_url":"https://github.com/gabrielwalt","followers_url":"https://api.github.com/users/gabrielwalt/followers","following_url":"https://api.github.com/users/gabrielwalt/following{/other_user}","gists_url":"https://api.github.com/users/gabrielwalt/gists{/gist_id}","starred_url":"https://api.github.com/users/gabrielwalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gabrielwalt/subscriptions","organizations_url":"https://api.github.com/users/gabrielwalt/orgs","repos_url":"https://api.github.com/users/gabrielwalt/repos","events_url":"https://api.github.com/users/gabrielwalt/events{/privacy}","received_events_url":"https://api.github.com/users/gabrielwalt/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":8,"state":"open","created_at":"2019-10-24T08:41:29Z","updated_at":"2019-10-31T13:38:37Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/adobe/aem-project-archetype/pulls/266/commits","review_comments_url":"https://api.github.com/repos/adobe/aem-project-archetype/pulls/266/comments","review_comment_url":"https://api.github.com/repos/adobe/aem-project-archetype/pulls/comments{/number}","comments_url":"https://api.github.com/repos/adobe/aem-project-archetype/issues/266/comments","statuses_url":"https://api.github.com/repos/adobe/aem-project-archetype/statuses/5573ec882b436b061550af51280111847e086de5","head":{"label":"godanny86:issue/246","ref":"issue/246","sha":"5573ec882b436b061550af51280111847e086de5","user":{"login":"godanny86","id":8974514,"node_id":"MDQ6VXNlcjg5NzQ1MTQ=","avatar_url":"https://avatars1.githubusercontent.com/u/8974514?v=4","gravatar_id":"","url":"https://api.github.com/users/godanny86","html_url":"https://github.com/godanny86","followers_url":"https://api.github.com/users/godanny86/followers","following_url":"https://api.github.com/users/godanny86/following{/other_user}","gists_url":"https://api.github.com/users/godanny86/gists{/gist_id}","starred_url":"https://api.github.com/users/godanny86/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/godanny86/subscriptions","organizations_url":"https://api.github.com/users/godanny86/orgs","repos_url":"https://api.github.com/users/godanny86/repos","events_url":"https://api.github.com/users/godanny86/events{/privacy}","received_events_url":"https://api.github.com/users/godanny86/received_events","type":"User","site_admin":false},"repo":{"id":195869692,"node_id":"MDEwOlJlcG9zaXRvcnkxOTU4Njk2OTI=","name":"aem-project-archetype","full_name":"godanny86/aem-project-archetype","private":false,"owner":{"login":"godanny86","id":8974514,"node_id":"MDQ6VXNlcjg5NzQ1MTQ=","avatar_url":"https://avatars1.githubusercontent.com/u/8974514?v=4","gravatar_id":"","url":"https://api.github.com/users/godanny86","html_url":"https://github.com/godanny86","followers_url":"https://api.github.com/users/godanny86/followers","following_url":"https://api.github.com/users/godanny86/following{/other_user}","gists_url":"https://api.github.com/users/godanny86/gists{/gist_id}","starred_url":"https://api.github.com/users/godanny86/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/godanny86/subscriptions","organizations_url":"https://api.github.com/users/godanny86/orgs","repos_url":"https://api.github.com/users/godanny86/repos","events_url":"https://api.github.com/users/godanny86/events{/privacy}","received_events_url":"https://api.github.com/users/godanny86/received_events","type":"User","site_admin":false},"html_url":"https://github.com/godanny86/aem-project-archetype","description":"Maven template to create new Adobe Experience Manager (AEM) projects that follow best practices","fork":true,"url":"https://api.github.com/repos/godanny86/aem-project-archetype","forks_url":"https://api.github.com/repos/godanny86/aem-project-archetype/forks","keys_url":"https://api.github.com/repos/godanny86/aem-project-archetype/keys{/key_id}","collaborators_url":"https://api.github.com/repos/godanny86/aem-project-archetype/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/godanny86/aem-project-archetype/teams","hooks_url":"https://api.github.com/repos/godanny86/aem-project-archetype/hooks","issue_events_url":"https://api.github.com/repos/godanny86/aem-project-archetype/issues/events{/number}","events_url":"https://api.github.com/repos/godanny86/aem-project-archetype/events","assignees_url":"https://api.github.com/repos/godanny86/aem-project-archetype/assignees{/user}","branches_url":"https://api.github.com/repos/godanny86/aem-project-archetype/branches{/branch}","tags_url":"https://api.github.com/repos/godanny86/aem-project-archetype/tags","blobs_url":"https://api.github.com/repos/godanny86/aem-project-archetype/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/godanny86/aem-project-archetype/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/godanny86/aem-project-archetype/git/refs{/sha}","trees_url":"https://api.github.com/repos/godanny86/aem-project-archetype/git/trees{/sha}","statuses_url":"https://api.github.com/repos/godanny86/aem-project-archetype/statuses/{sha}","languages_url":"https://api.github.com/repos/godanny86/aem-project-archetype/languages","stargazers_url":"https://api.github.com/repos/godanny86/aem-project-archetype/stargazers","contributors_url":"https://api.github.com/repos/godanny86/aem-project-archetype/contributors","subscribers_url":"https://api.github.com/repos/godanny86/aem-project-archetype/subscribers","subscription_url":"https://api.github.com/repos/godanny86/aem-project-archetype/subscription","commits_url":"https://api.github.com/repos/godanny86/aem-project-archetype/commits{/sha}","git_commits_url":"https://api.github.com/repos/godanny86/aem-project-archetype/git/commits{/sha}","comments_url":"https://api.github.com/repos/godanny86/aem-project-archetype/comments{/number}","issue_comment_url":"https://api.github.com/repos/godanny86/aem-project-archetype/issues/comments{/number}","contents_url":"https://api.github.com/repos/godanny86/aem-project-archetype/contents/{+path}","compare_url":"https://api.github.com/repos/godanny86/aem-project-archetype/compare/{base}...{head}","merges_url":"https://api.github.com/repos/godanny86/aem-project-archetype/merges","archive_url":"https://api.github.com/repos/godanny86/aem-project-archetype/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/godanny86/aem-project-archetype/downloads","issues_url":"https://api.github.com/repos/godanny86/aem-project-archetype/issues{/number}","pulls_url":"https://api.github.com/repos/godanny86/aem-project-archetype/pulls{/number}","milestones_url":"https://api.github.com/repos/godanny86/aem-project-archetype/milestones{/number}","notifications_url":"https://api.github.com/repos/godanny86/aem-project-archetype/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/godanny86/aem-project-archetype/labels{/name}","releases_url":"https://api.github.com/repos/godanny86/aem-project-archetype/releases{/id}","deployments_url":"https://api.github.com/repos/godanny86/aem-project-archetype/deployments","created_at":"2019-07-08T18:55:13Z","updated_at":"2019-10-04T19:37:25Z","pushed_at":"2019-10-29T20:39:32Z","git_url":"git://github.com/godanny86/aem-project-archetype.git","ssh_url":"git@github.com:godanny86/aem-project-archetype.git","clone_url":"https://github.com/godanny86/aem-project-archetype.git","svn_url":"https://github.com/godanny86/aem-project-archetype","homepage":"","size":1378,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"adobe:master","ref":"master","sha":"ecc23d3bdadaeb46352f00bcf28fd7d62b5db0c8","user":{"login":"adobe","id":476009,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NjAwOQ==","avatar_url":"https://avatars2.githubusercontent.com/u/476009?v=4","gravatar_id":"","url":"https://api.github.com/users/adobe","html_url":"https://github.com/adobe","followers_url":"https://api.github.com/users/adobe/followers","following_url":"https://api.github.com/users/adobe/following{/other_user}","gists_url":"https://api.github.com/users/adobe/gists{/gist_id}","starred_url":"https://api.github.com/users/adobe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adobe/subscriptions","organizations_url":"https://api.github.com/users/adobe/orgs","repos_url":"https://api.github.com/users/adobe/repos","events_url":"https://api.github.com/users/adobe/events{/privacy}","received_events_url":"https://api.github.com/users/adobe/received_events","type":"Organization","site_admin":false},"repo":{"id":23178577,"node_id":"MDEwOlJlcG9zaXRvcnkyMzE3ODU3Nw==","name":"aem-project-archetype","full_name":"adobe/aem-project-archetype","private":false,"owner":{"login":"adobe","id":476009,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NjAwOQ==","avatar_url":"https://avatars2.githubusercontent.com/u/476009?v=4","gravatar_id":"","url":"https://api.github.com/users/adobe","html_url":"https://github.com/adobe","followers_url":"https://api.github.com/users/adobe/followers","following_url":"https://api.github.com/users/adobe/following{/other_user}","gists_url":"https://api.github.com/users/adobe/gists{/gist_id}","starred_url":"https://api.github.com/users/adobe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adobe/subscriptions","organizations_url":"https://api.github.com/users/adobe/orgs","repos_url":"https://api.github.com/users/adobe/repos","events_url":"https://api.github.com/users/adobe/events{/privacy}","received_events_url":"https://api.github.com/users/adobe/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/adobe/aem-project-archetype","description":"Maven template to create new Adobe Experience Manager (AEM) projects that follow best practices","fork":false,"url":"https://api.github.com/repos/adobe/aem-project-archetype","forks_url":"https://api.github.com/repos/adobe/aem-project-archetype/forks","keys_url":"https://api.github.com/repos/adobe/aem-project-archetype/keys{/key_id}","collaborators_url":"https://api.github.com/repos/adobe/aem-project-archetype/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/adobe/aem-project-archetype/teams","hooks_url":"https://api.github.com/repos/adobe/aem-project-archetype/hooks","issue_events_url":"https://api.github.com/repos/adobe/aem-project-archetype/issues/events{/number}","events_url":"https://api.github.com/repos/adobe/aem-project-archetype/events","assignees_url":"https://api.github.com/repos/adobe/aem-project-archetype/assignees{/user}","branches_url":"https://api.github.com/repos/adobe/aem-project-archetype/branches{/branch}","tags_url":"https://api.github.com/repos/adobe/aem-project-archetype/tags","blobs_url":"https://api.github.com/repos/adobe/aem-project-archetype/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/adobe/aem-project-archetype/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/adobe/aem-project-archetype/git/refs{/sha}","trees_url":"https://api.github.com/repos/adobe/aem-project-archetype/git/trees{/sha}","statuses_url":"https://api.github.com/repos/adobe/aem-project-archetype/statuses/{sha}","languages_url":"https://api.github.com/repos/adobe/aem-project-archetype/languages","stargazers_url":"https://api.github.com/repos/adobe/aem-project-archetype/stargazers","contributors_url":"https://api.github.com/repos/adobe/aem-project-archetype/contributors","subscribers_url":"https://api.github.com/repos/adobe/aem-project-archetype/subscribers","subscription_url":"https://api.github.com/repos/adobe/aem-project-archetype/subscription","commits_url":"https://api.github.com/repos/adobe/aem-project-archetype/commits{/sha}","git_commits_url":"https://api.github.com/repos/adobe/aem-project-archetype/git/commits{/sha}","comments_url":"https://api.github.com/repos/adobe/aem-project-archetype/comments{/number}","issue_comment_url":"https://api.github.com/repos/adobe/aem-project-archetype/issues/comments{/number}","contents_url":"https://api.github.com/repos/adobe/aem-project-archetype/contents/{+path}","compare_url":"https://api.github.com/repos/adobe/aem-project-archetype/compare/{base}...{head}","merges_url":"https://api.github.com/repos/adobe/aem-project-archetype/merges","archive_url":"https://api.github.com/repos/adobe/aem-project-archetype/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/adobe/aem-project-archetype/downloads","issues_url":"https://api.github.com/repos/adobe/aem-project-archetype/issues{/number}","pulls_url":"https://api.github.com/repos/adobe/aem-project-archetype/pulls{/number}","milestones_url":"https://api.github.com/repos/adobe/aem-project-archetype/milestones{/number}","notifications_url":"https://api.github.com/repos/adobe/aem-project-archetype/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/adobe/aem-project-archetype/labels{/name}","releases_url":"https://api.github.com/repos/adobe/aem-project-archetype/releases{/id}","deployments_url":"https://api.github.com/repos/adobe/aem-project-archetype/deployments","created_at":"2014-08-21T07:45:06Z","updated_at":"2019-10-30T01:31:19Z","pushed_at":"2019-10-31T13:38:36Z","git_url":"git://github.com/adobe/aem-project-archetype.git","ssh_url":"git@github.com:adobe/aem-project-archetype.git","clone_url":"https://github.com/adobe/aem-project-archetype.git","svn_url":"https://github.com/adobe/aem-project-archetype","homepage":"","size":1357,"stargazers_count":218,"watchers_count":218,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":135,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":12,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":135,"open_issues":12,"watchers":218,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/adobe/aem-project-archetype/pulls/266"},"html":{"href":"https://github.com/adobe/aem-project-archetype/pull/266"},"issue":{"href":"https://api.github.com/repos/adobe/aem-project-archetype/issues/266"},"comments":{"href":"https://api.github.com/repos/adobe/aem-project-archetype/issues/266/comments"},"review_comments":{"href":"https://api.github.com/repos/adobe/aem-project-archetype/pulls/266/comments"},"review_comment":{"href":"https://api.github.com/repos/adobe/aem-project-archetype/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/adobe/aem-project-archetype/pulls/266/commits"},"statuses":{"href":"https://api.github.com/repos/adobe/aem-project-archetype/statuses/5573ec882b436b061550af51280111847e086de5"}},"author_association":"COLLABORATOR","merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"bpauli","id":689884,"node_id":"MDQ6VXNlcjY4OTg4NA==","avatar_url":"https://avatars1.githubusercontent.com/u/689884?v=4","gravatar_id":"","url":"https://api.github.com/users/bpauli","html_url":"https://github.com/bpauli","followers_url":"https://api.github.com/users/bpauli/followers","following_url":"https://api.github.com/users/bpauli/following{/other_user}","gists_url":"https://api.github.com/users/bpauli/gists{/gist_id}","starred_url":"https://api.github.com/users/bpauli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bpauli/subscriptions","organizations_url":"https://api.github.com/users/bpauli/orgs","repos_url":"https://api.github.com/users/bpauli/repos","events_url":"https://api.github.com/users/bpauli/events{/privacy}","received_events_url":"https://api.github.com/users/bpauli/received_events","type":"User","site_admin":false},"comments":1,"review_comments":0,"maintainer_can_modify":false,"commits":2,"additions":205,"deletions":100,"changed_files":6}}
other: {"actor":{"display_login":"bpauli"}}