{"action":"created","issue":{"url":"https://api.github.com/repos/codebuddies/codebuddies/issues/211","repository_url":"https://api.github.com/repos/codebuddies/codebuddies","labels_url":"https://api.github.com/repos/codebuddies/codebuddies/issues/211/labels{/name}","comments_url":"https://api.github.com/repos/codebuddies/codebuddies/issues/211/comments","events_url":"https://api.github.com/repos/codebuddies/codebuddies/issues/211/events","html_url":"https://github.com/codebuddies/codebuddies/issues/211","id":179049556,"node_id":"MDU6SXNzdWUxNzkwNDk1NTY=","number":211,"title":"Use React instead of Blaze","user":{"login":"lpatmo","id":4512699,"node_id":"MDQ6VXNlcjQ1MTI2OTk=","avatar_url":"https://avatars0.githubusercontent.com/u/4512699?v=4","gravatar_id":"","url":"https://api.github.com/users/lpatmo","html_url":"https://github.com/lpatmo","followers_url":"https://api.github.com/users/lpatmo/followers","following_url":"https://api.github.com/users/lpatmo/following{/other_user}","gists_url":"https://api.github.com/users/lpatmo/gists{/gist_id}","starred_url":"https://api.github.com/users/lpatmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lpatmo/subscriptions","organizations_url":"https://api.github.com/users/lpatmo/orgs","repos_url":"https://api.github.com/users/lpatmo/repos","events_url":"https://api.github.com/users/lpatmo/events{/privacy}","received_events_url":"https://api.github.com/users/lpatmo/received_events","type":"User","site_admin":false},"labels":[{"id":682818072,"node_id":"MDU6TGFiZWw2ODI4MTgwNzI=","url":"https://api.github.com/repos/codebuddies/codebuddies/labels/Waiting%20For%20Review","name":"Waiting For Review","color":"ededed","default":false},{"id":348125859,"node_id":"MDU6TGFiZWwzNDgxMjU4NTk=","url":"https://api.github.com/repos/codebuddies/codebuddies/labels/discussion","name":"discussion","color":"c5def5","default":false},{"id":348674424,"node_id":"MDU6TGFiZWwzNDg2NzQ0MjQ=","url":"https://api.github.com/repos/codebuddies/codebuddies/labels/suggestion","name":"suggestion","color":"006b75","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2016-09-24T20:14:59Z","updated_at":"2018-07-22T22:05:24Z","closed_at":null,"author_association":"MEMBER","body":"See: branch `white-sandpiper`, started by @distalx. (https://github.com/codebuddiesdotorg/cb-v2-scratch/tree/white-sandpiper)\n\nThis'll require a bit of work, but the advantages are:\n- more people and projects are using ReactJS vs. Blaze, and more questions are being asked about ReactJS vs. Blaze\n- easier for new contributors?\n\nDisadvantages:\n- will take work for us to rewrite our templates \n- possible harder learning curve for ReactJS vs. Blaze\n"},"comment":{"url":"https://api.github.com/repos/codebuddies/codebuddies/issues/comments/406900714","html_url":"https://github.com/codebuddies/codebuddies/issues/211#issuecomment-406900714","issue_url":"https://api.github.com/repos/codebuddies/codebuddies/issues/211","id":406900714,"node_id":"MDEyOklzc3VlQ29tbWVudDQwNjkwMDcxNA==","user":{"login":"sergeant-q","id":1451729,"node_id":"MDQ6VXNlcjE0NTE3Mjk=","avatar_url":"https://avatars0.githubusercontent.com/u/1451729?v=4","gravatar_id":"","url":"https://api.github.com/users/sergeant-q","html_url":"https://github.com/sergeant-q","followers_url":"https://api.github.com/users/sergeant-q/followers","following_url":"https://api.github.com/users/sergeant-q/following{/other_user}","gists_url":"https://api.github.com/users/sergeant-q/gists{/gist_id}","starred_url":"https://api.github.com/users/sergeant-q/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sergeant-q/subscriptions","organizations_url":"https://api.github.com/users/sergeant-q/orgs","repos_url":"https://api.github.com/users/sergeant-q/repos","events_url":"https://api.github.com/users/sergeant-q/events{/privacy}","received_events_url":"https://api.github.com/users/sergeant-q/received_events","type":"User","site_admin":false},"created_at":"2018-07-22T22:05:24Z","updated_at":"2018-07-22T22:05:24Z","author_association":"COLLABORATOR","body":"@lpatmo there is no issue in keeping blaze to be honest. It works for the current state of the project. However, some advantages to switching to Vue (or easily React) are:\r\n\r\n - **Component-based UI architecture**. As the project functionality grows, building out the UI in a component-based approach is ideal. Makes it easier to manage and support. Blaze _kind of_ supports \"components\" via its templates but it's not a true implementation.\r\n - **Reusability**. Blaze _kinda_ supports [this](http://blazejs.org/guide/reusable-components.html) but not really. Missing local reactive state for example. Hard to \"re-use\" a Blaze template and not very straight-forward\r\n - **Portability** In the event we want to move away from Meteor in the future and decouple the front-end from the backend, we can do so with libraries like Vue. Blaze today, only works within a Meteor project.\r\n - **Performance** - Blaze does not implement a virtual DOM. Not a big issue for small-to-medium projects but as a the projects grows, scaling it out will become a problem with Blaze. Think of efficiently re-rendering your components.\r\n - **Eco-system & Community** Vue has grown tremendously over the years and its eco-system is much more mature than ever. Vue's documentation is amazing, practical and approachable. You won't have issues finding solutions online to Vue problems versus say Blaze. \r\n\r\nLastly, aside from the technical advantages. I just want to highlight the fact that we have an opportunity to create an open-source project with a tech stack that is keeping up with modern times and allows existing and new contributors to continually learn and grow their skills with applicable job market skills. Plus we might attract more contributors since Vue is a mainstream framework.\r\n\r\nYes, it will be challenging (and a bit painful) to migrate over to Vue but I believe the long-term benefits outweigh the temporary pain. You can argue, \"if ain't broke - don't fix it\" but I believe this is a bit short-sighted. "}}
{"actor":{"display_login":"sergeant-q"}}