{"action":"created","issue":{"url":"https://api.github.com/repos/meanjs/mean/issues/1666","repository_url":"https://api.github.com/repos/meanjs/mean","labels_url":"https://api.github.com/repos/meanjs/mean/issues/1666/labels{/name}","comments_url":"https://api.github.com/repos/meanjs/mean/issues/1666/comments","events_url":"https://api.github.com/repos/meanjs/mean/issues/1666/events","html_url":"https://github.com/meanjs/mean/issues/1666","id":193344160,"number":1666,"title":"MEAN.JS 1.0 Roadmap","user":{"login":"lirantal","id":316371,"avatar_url":"https://avatars.githubusercontent.com/u/316371?v=3","gravatar_id":"","url":"https://api.github.com/users/lirantal","html_url":"https://github.com/lirantal","followers_url":"https://api.github.com/users/lirantal/followers","following_url":"https://api.github.com/users/lirantal/following{/other_user}","gists_url":"https://api.github.com/users/lirantal/gists{/gist_id}","starred_url":"https://api.github.com/users/lirantal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lirantal/subscriptions","organizations_url":"https://api.github.com/users/lirantal/orgs","repos_url":"https://api.github.com/users/lirantal/repos","events_url":"https://api.github.com/users/lirantal/events{/privacy}","received_events_url":"https://api.github.com/users/lirantal/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"lirantal","id":316371,"avatar_url":"https://avatars.githubusercontent.com/u/316371?v=3","gravatar_id":"","url":"https://api.github.com/users/lirantal","html_url":"https://github.com/lirantal","followers_url":"https://api.github.com/users/lirantal/followers","following_url":"https://api.github.com/users/lirantal/following{/other_user}","gists_url":"https://api.github.com/users/lirantal/gists{/gist_id}","starred_url":"https://api.github.com/users/lirantal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lirantal/subscriptions","organizations_url":"https://api.github.com/users/lirantal/orgs","repos_url":"https://api.github.com/users/lirantal/repos","events_url":"https://api.github.com/users/lirantal/events{/privacy}","received_events_url":"https://api.github.com/users/lirantal/received_events","type":"User","site_admin":false},"assignees":[{"login":"lirantal","id":316371,"avatar_url":"https://avatars.githubusercontent.com/u/316371?v=3","gravatar_id":"","url":"https://api.github.com/users/lirantal","html_url":"https://github.com/lirantal","followers_url":"https://api.github.com/users/lirantal/followers","following_url":"https://api.github.com/users/lirantal/following{/other_user}","gists_url":"https://api.github.com/users/lirantal/gists{/gist_id}","starred_url":"https://api.github.com/users/lirantal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lirantal/subscriptions","organizations_url":"https://api.github.com/users/lirantal/orgs","repos_url":"https://api.github.com/users/lirantal/repos","events_url":"https://api.github.com/users/lirantal/events{/privacy}","received_events_url":"https://api.github.com/users/lirantal/received_events","type":"User","site_admin":false}],"milestone":null,"comments":29,"created_at":"2016-12-04T10:44:34Z","updated_at":"2016-12-27T21:02:36Z","closed_at":null,"body":"In continuation to Angular 2 discussion in #1591, I would like to try and set some baseline agreement and proposal for the future of MEAN.JS:\r\n\r\n## Action Items \r\nPlease steer the discussion towards the following action items that we wish to reach agreement on in the following order of priorities:\r\n- [ ] Achieve agreement on current MEAN.JS Angular1 roadmap as depicted in item A below\r\n- [ ] Achieve agreement on frontend/backend project structure as proposed in item B below\r\n- [ ] Achieve agreement on frontend tech stack details (i.e: `angular-cli` vs any other tool), frontend layout/components lib (material, bootstrap etc)\r\n\r\n## A. MEAN.JS Angular v1 (current stack) Roadmap\r\n- [ ] The current stack and project structure of MEAN.JS will continue to evolve through the 0.x versions. So the next version would be 0.6.0, 0.7.0, 0.7.1, etc. This will maintain an LTS roadmap for applications which rely on the simple, flexible, and long-proved structure of the MEAN.JS project.\r\n- [ ] We require specific project contributors and maintainers to continue supporting this stack.\r\n\r\n## B. Future MEAN.JS with Angular 2\r\nRather than a check list let's try to reason about the direction considering the following:\r\n* Frontend: Angular 2 obviously. I propose to use the `angular-cli` because I believe the scaffold tool will dominate the starter projects. It also means we don't need to maintain our own and we can make continuous updates and merge the project with updates that `angular-cli` releases.\r\n* Backend: While `expressjs` seems like an obvious point due to popularity and community wealth, I'm not yet sure on `MongoDB` for the future although I'm willing to keep the MEN stack technologies for now until someone can testify if there are really better alternatives (i.e: koa + couchbase)\r\n* I would like to completely separate the Frontend and Backend so they are decoupled projects, for example you can imagine having the following structure:\r\n```\r\n/client\r\n/server\r\npackage.json\r\n```\r\n\r\nWhere:\r\n**/client** will have an angular-cli bootstraped project\r\n**/server** will have our MEN-based project, completely API-based\r\nThe **package.json** in the top root is simply for managing the npm scripts to run the project\r\n\r\nAdvantages in this approach is due to the de-coupling of the frontend and backend technologies, users can \"take\" the server api side and use react for the frontend by simply exchanging our ng2 `/client` folder with their own client folder.\r\n\r\nDisadvantages could be that it will be harder to support universal-based projects.\r\n\r\n* Managing the project through GitHub has the following options:\r\n1. Both /server and /client in the same MEAN.JS repo (as we have now)\r\n2. /server and /client can be within the same repo but on different branches, and we can do periodical merges to master with both of them\r\n3. Completely separate projects, i.e: MEAN.JS-API repo and MEAN.JS-Frontend repo but the downside here is that there's no single repo to provide a full project. Although, it might not even be that hard as it would simply be:\r\n```\r\ngit clone git://meanjs-api-repo server\r\ngit clone git://meanjs-frontend-repo client\r\n```\r\n"},"comment":{"url":"https://api.github.com/repos/meanjs/mean/issues/comments/269382268","html_url":"https://github.com/meanjs/mean/issues/1666#issuecomment-269382268","issue_url":"https://api.github.com/repos/meanjs/mean/issues/1666","id":269382268,"user":{"login":"liorkesos","id":245027,"avatar_url":"https://avatars.githubusercontent.com/u/245027?v=3","gravatar_id":"","url":"https://api.github.com/users/liorkesos","html_url":"https://github.com/liorkesos","followers_url":"https://api.github.com/users/liorkesos/followers","following_url":"https://api.github.com/users/liorkesos/following{/other_user}","gists_url":"https://api.github.com/users/liorkesos/gists{/gist_id}","starred_url":"https://api.github.com/users/liorkesos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liorkesos/subscriptions","organizations_url":"https://api.github.com/users/liorkesos/orgs","repos_url":"https://api.github.com/users/liorkesos/repos","events_url":"https://api.github.com/users/liorkesos/events{/privacy}","received_events_url":"https://api.github.com/users/liorkesos/received_events","type":"User","site_admin":false},"created_at":"2016-12-27T21:02:36Z","updated_at":"2016-12-27T21:02:36Z","body":"I think that there is a place for a fullstack js and that it can be pretty daunting (from experience) to support multiple frontends/backends\r\nIf I want to use a react frontend I would use something like react-boilerplate which is quite impressive, When addressing server side repos either oppinianated monolothes like sails or microservice geared ones like seneca, thorin or featherjs .\r\nThis brings me to the conclusion that (all of the) mean projects value is within the fullstack js space introducing the \"vertical plugin\" approach.\r\nSo I think that these are the key guidelines I'd use (we have implemented some of them in mean.io)\r\n\r\n1.  Ditch bower, adopt npm (browserify)\r\n1. angular-cli if your not using a mean branded cli\r\n1. redux state\r\n1. Try to move from classic rest/express to graphql/express and introduce the awesome graphql to larger masses\r\n1. I wonder if relay would work with Angular?\r\n\r\nAnyway I'm still trying to wrap my head on how we can collaberate on the mean stack and create joint standards or even a joint development roadmap ...\r\nIn any case have a great release....\r\nLior\r\n"}}
{"actor":{"display_login":"liorkesos"}}