{"action":"created","issue":{"url":"https://api.github.com/repos/Swimlane/angular-systemjs-seed/issues/16","labels_url":"https://api.github.com/repos/Swimlane/angular-systemjs-seed/issues/16/labels{/name}","comments_url":"https://api.github.com/repos/Swimlane/angular-systemjs-seed/issues/16/comments","events_url":"https://api.github.com/repos/Swimlane/angular-systemjs-seed/issues/16/events","html_url":"https://github.com/Swimlane/angular-systemjs-seed/issues/16","id":57508719,"number":16,"title":"Refactor project into a more useful seed","user":{"login":"lookfirst","id":85355,"avatar_url":"https://avatars.githubusercontent.com/u/85355?v=3","gravatar_id":"","url":"https://api.github.com/users/lookfirst","html_url":"https://github.com/lookfirst","followers_url":"https://api.github.com/users/lookfirst/followers","following_url":"https://api.github.com/users/lookfirst/following{/other_user}","gists_url":"https://api.github.com/users/lookfirst/gists{/gist_id}","starred_url":"https://api.github.com/users/lookfirst/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lookfirst/subscriptions","organizations_url":"https://api.github.com/users/lookfirst/orgs","repos_url":"https://api.github.com/users/lookfirst/repos","events_url":"https://api.github.com/users/lookfirst/events{/privacy}","received_events_url":"https://api.github.com/users/lookfirst/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Swimlane/angular-systemjs-seed/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":{"login":"amcdnl","id":227909,"avatar_url":"https://avatars.githubusercontent.com/u/227909?v=3","gravatar_id":"","url":"https://api.github.com/users/amcdnl","html_url":"https://github.com/amcdnl","followers_url":"https://api.github.com/users/amcdnl/followers","following_url":"https://api.github.com/users/amcdnl/following{/other_user}","gists_url":"https://api.github.com/users/amcdnl/gists{/gist_id}","starred_url":"https://api.github.com/users/amcdnl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amcdnl/subscriptions","organizations_url":"https://api.github.com/users/amcdnl/orgs","repos_url":"https://api.github.com/users/amcdnl/repos","events_url":"https://api.github.com/users/amcdnl/events{/privacy}","received_events_url":"https://api.github.com/users/amcdnl/received_events","type":"User","site_admin":false},"milestone":null,"comments":15,"created_at":"2015-02-12T19:39:26Z","updated_at":"2015-03-10T19:37:40Z","closed_at":null,"body":"Right now, to use this project, you have to clone it and then rip out the parts you don't need. You also have to come up with a good understanding of how all the parts fit together and how the gulpfile interacts with them. Sure, it is pretty small (right now), but it is kind of intimidating for a new user. This project isn't the only one with this issue, all seed projects kind of suck in this same way.\r\n\r\nI've been thinking about this a lot. There is other projects like Yeoman, which give you the Rails type experience of being able to 'new' a project with a generator model and create templates for things like controllers, etc. This is great for just starting off, but doesn't solve the issue of when the base project changes, updating your own project, most of that code lives in the gulpfile.\r\n\r\nSorry this is so long winded.\r\n\r\nWhat I was thinking as a first step to providing a better experience would be to extract out all of the gulp tasks that do stuff into functions and put them into their own npm module. This way, the gulpfile just loads a bunch of functions that can be more easily re-used (and therefore updated). The seed gulpfile will then just look like a bunch of method calls that setup the tasks.\r\n\r\nOnce we have that, I think that building a yeoman experience might be the next step. Then we won't have to rip out all the existing example code as yeoman can generate that for us.\r\n\r\nThoughts?"},"comment":{"url":"https://api.github.com/repos/Swimlane/angular-systemjs-seed/issues/comments/78131195","html_url":"https://github.com/Swimlane/angular-systemjs-seed/issues/16#issuecomment-78131195","issue_url":"https://api.github.com/repos/Swimlane/angular-systemjs-seed/issues/16","id":78131195,"user":{"login":"brianfeister","id":806536,"avatar_url":"https://avatars.githubusercontent.com/u/806536?v=3","gravatar_id":"","url":"https://api.github.com/users/brianfeister","html_url":"https://github.com/brianfeister","followers_url":"https://api.github.com/users/brianfeister/followers","following_url":"https://api.github.com/users/brianfeister/following{/other_user}","gists_url":"https://api.github.com/users/brianfeister/gists{/gist_id}","starred_url":"https://api.github.com/users/brianfeister/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brianfeister/subscriptions","organizations_url":"https://api.github.com/users/brianfeister/orgs","repos_url":"https://api.github.com/users/brianfeister/repos","events_url":"https://api.github.com/users/brianfeister/events{/privacy}","received_events_url":"https://api.github.com/users/brianfeister/received_events","type":"User","site_admin":false},"created_at":"2015-03-10T19:37:40Z","updated_at":"2015-03-10T19:37:40Z","body":"Also, have a look at https://github.com/Swimlane/systemjs-route-bundler/issues/15 for a problem I ran into when migrating the JS into `/client/src` rather than project root"}}