Skip to content
This repository has been archived by the owner. It is now read-only.

Generator Roadmap #553

Open
eddiemonge opened this issue Jan 20, 2014 · 99 comments

Comments

@eddiemonge
Copy link
Member

commented Jan 20, 2014

In an effort to be more transparent about the project, we are creating roadmaps for everything. This is the tentative roadmap for the Angular generator.

Priority 1

  • Refactor all the tests to test everything, including all existing options
  • Make everything configurable. This will include a combination of flags, prompts and a configuration file
    • File casing in both scripts and filenames
    • Paths to where things are located tip
    • Preprocessors declaration
  • Support the project as a sub-generator for other projects (Angular full stack, MEAN stack, etc). This should happen as a side-effect of making everything configurable.
  • Different organization of files. This includes the by module (proposed AngularJS team recommendation), or by function (current). Also where assets go in dev mode (CSS, JS, HTML)

Priority 2

  • Remove minsafe files. Done
  • Consolidate all template files/folders into a central location Done
  • Add gulp as a build tool
  • Add support for JS templates (#277)
  • Add Protractor E2E tests and templates
  • Add option for UI-Router

Priority 3

  • Add support for TypeScript (#313, #539)
  • Add support for BabelJS
  • Add support for Stylus, Less
  • Add support for Jade (#420)
  • Remove heavy reliance on Bootstrap so other frameworks can be used (maybe as a prompt choice)
  • Make vanilla CSS (no framework selected) more visually appealing
  • Add ESLint to the project (probably replaces JSHint)

Priority 4

  • Support for backend implementations, whether that be proxies, rewrite rules, make it more composable for other generators or actually adding a backend REST server (highly unlikely though)
  • uncss? remove css styles

If you think there are other things that should be added to the roadmap, or have questions about any of these, please feel free to comment.

@btford

This comment has been minimized.

Copy link
Contributor

commented Jan 20, 2014

👍

@intellix

This comment has been minimized.

Copy link

commented Jan 20, 2014

Add support for JS templates = something like html2js? I was looking at this earlier. Was wondering how to integrate it into the usemin process and it seems like it involves creating a custom "flow" which would merge the templates.js from html2js into the concatinated script generated from the usemin block files.

@passy

This comment has been minimized.

Copy link
Member

commented Jan 20, 2014

Excellent! 👍

@passy - from his phone
On Jan 20, 2014 8:00 PM, "Eddie Monge" notifications@github.com wrote:

In an effort to be more transparent about the project, we are creating
roadmaps for everything. This is the tenative roadmap for the Angular
generator.
Priority 1

  • Refactor all the tests to test everything, including all existing
    options
  • Make everything configurable. This will include a combination of
    flags, prompts and a configuration file (yo-rc.json)

Priority 2

  • Remove minsafe files
  • Consolidate all template files/folders into a central location
  • Add support for JS templates

Priority 3

  • Add support for TypeScript
  • Add support for Stylus, Less
  • Add support for Jade
  • Remove Bootstrap from the project (cause a lot of issues but is
    open for discussion/debate)

If you think there are other things that should be added to the roadmap,
or have questions about any of these, please feel free to comment


Reply to this email directly or view it on GitHubhttps://github.com//issues/553
.

@addyosmani

This comment has been minimized.

Copy link
Member

commented Jan 21, 2014

👍 this looks sharp. Nice work putting this together @eddiemonge.

@jjt

This comment has been minimized.

Copy link
Contributor

commented Jan 21, 2014

Bootstrap could be considered orthogonal to the generator, but I think it's better to leave it as the default option.

The Bootstrapped version makes gen-ng look like it's done a much better job than than the plain version, because it looks more like an actual website. I think that users who are new to gen-ng will be more impressed with the BS version and you'll have a higher adoption rate, while veteran users will (hopefully) know what they want and can choose to not install BS.

@eddiemonge

This comment has been minimized.

Copy link
Member Author

commented Jan 21, 2014

@jjt The vanilla CSS version needs work. I updated the P3 with a better alternative

@jjt

This comment has been minimized.

Copy link
Contributor

commented Jan 21, 2014

@eddiemonge Ah, nice! Was going to say that other frameworks would be a good addition, but didn't want to pile more on. As to a vanilla css look, including normalize.css, centering .content, and making the nav menu inline with no discs would go a long way.

@programbo

This comment has been minimized.

Copy link

commented Jan 22, 2014

I'd really like to see ui-router an an option. I'm know I'm not alone in preferring ui-router as my go-to over the default ngRouter. Also, I'll second that html2js request, and what ever became of that massive discussion about feature grouping (ngBoilerplate style) vs layer grouping?

@diwa-zz

This comment has been minimized.

Copy link

commented Jan 22, 2014

+1 for feature grouping

@ahimta

This comment has been minimized.

Copy link

commented Jan 23, 2014

+1 for jade or anything that makes writing HTML more developer friendly. I really don't like HTML syntax (writing opening and closing tag), I prefer HAML.

@34r7h

This comment has been minimized.

Copy link

commented Jan 28, 2014

Does "Support the project as a sub-generator for other projects" mean having the ability to generate sub-modules for larger projects, which are then thankfully separated by feature?

@vincivince

This comment has been minimized.

Copy link

commented Jan 28, 2014

+1 for Jade

@vincivince

This comment has been minimized.

Copy link

commented Jan 28, 2014

  • Jade
  • i18n
  • html2js

-> grunt-jade-i18n + grunt-html2js

@ProLoser

This comment has been minimized.

Copy link

commented Jan 30, 2014

Any thoughts on adding proper module structure? Creating controllers/services/directives into respective directories seems like it is encouraging a now-considered poorer practice.

@eddiemonge

This comment has been minimized.

Copy link
Member Author

commented Jan 31, 2014

@programbo That could be explored. Would need the configuration done first as that would add exponential more complexity

@ahimta I prefer Jade since its based off Haml but easier to use and pure JS

@irthos Possibly, I think. Not entirely sure about your question

@vdesbarres i18n most likely won't be a part of this. You can easily add that to your own project with something like angular-translate though. html2js also probably won't make it as I am leaning towards (and have been using) the grunt-angular-templates plugin for this functionality

@ProLoser Yup. Updated the milestone with a link to https://github.com/eddiemonge/generator-angular-api/ . Feel free to comment and post issues there until I get that functionality into the generator

@34r7h

This comment has been minimized.

Copy link

commented Jan 31, 2014

+1 currently i've created a /modules dir and inside each one a dir for a
new module, each being a standalone generated app. a few smart grunt tweaks
and all the subapps are sending their js from /dist to the main app. kinda
klonky. wish the generator could be run again from the root directory and
make a new sub.module if there's an app there. then the generator should
register the module and inject it appropriately. tricky stuff, no doubt.

On Thu, Jan 30, 2014 at 3:14 PM, Dean Sofer notifications@github.comwrote:

Any thoughts on adding proper module structure? Creating
controllers/services/directives into respective directories seems like it
is encouraging a now-considered poorer practice.

Reply to this email directly or view it on GitHubhttps://github.com//issues/553#issuecomment-33745539
.

@ragingwind

This comment has been minimized.

Copy link

commented Jan 31, 2014

👏

@ProLoser

This comment has been minimized.

Copy link

commented Jan 31, 2014

I would like to see a LESS option since you are already offering bootstrap.
I also second the use of ui router, and while we're at it it would be cool if we prompt them about ui bootstrap if they request bootstrap.
Alternatively, maybe we should start creating a ui sub-generator instead that is designed to go along with this one.

@intellix

This comment has been minimized.

Copy link

commented Feb 1, 2014

After seeing how Gulp is about streaming, I wouldn't mind seeing a Gulp version of this. I wanted to add html2js and with all of the temporary files and complexity of usemin creating it's own flow, I have no idea where to throw that into.

It would be good to say:
these files I specify (templates): html2js + files found within index.html > concat > uglify

I've not played with it yet, but it looks and sounds good. I really do think the Gruntfile here is a beast.

@jarrettch

This comment has been minimized.

Copy link

commented Feb 5, 2014

+1 for adding ui-router.

Edit: I mentioned Protractor but apparently there's already a generator and instructions for using it here: http://www.codeorbits.com/blog/2014/01/26/angularjs-end-to-end-testing-with-protractor-easy-set-up-with-yeoman/

My mistake.

@programbo

This comment has been minimized.

Copy link

commented Feb 5, 2014

Protractor is great, and whilst it would be a convenience having it as the
default e2e test runner, it's pretty easy to add to generator-angular
projects after they have been created.

On 5 Feb 2014, at 6:18 pm, Jarrett Harris notifications@github.com wrote:

+1 for adding ui-router.

It seems the AngularJS team is moving towards Protractor for testing. Is
adding this feasible over the next year?

Reply to this email directly or view it on
GitHubhttps://github.com//issues/553#issuecomment-34142856
.

@bguiz

This comment has been minimized.

Copy link

commented Feb 16, 2014

My vote to bumping protractor up to top priority group.

@timelf123

This comment has been minimized.

Copy link

commented Feb 18, 2014

Thanks @eddiemonge ! Great work.

@piotrwitek

This comment has been minimized.

Copy link

commented Feb 21, 2014

+1 for typescript support, Great effort!

@diwa-zz

This comment has been minimized.

Copy link

commented Mar 3, 2014

+1 for typescript support.

Is this still the 2014 Q1 roadmap ?

@eddiemonge

This comment has been minimized.

Copy link
Member Author

commented Mar 3, 2014

Yeah, Im a little behind schedule but trying to catch up.

@eddiemonge eddiemonge changed the title 2014 Q1 Roadmap 2014 H1 Roadmap Apr 11, 2014

@eddiemonge eddiemonge changed the title 2014 H1 Roadmap Generator Roadmap May 6, 2014

@avdd

This comment has been minimized.

Copy link

commented Jan 25, 2015

@ProLoser I'm starting to agree with you I think. Bloated, out of date, inscrutable, over-opinionated, brittle and often just broken. They seem to be solving the wrong problem. It seems the only real use case is writing your own generators, at which point you're probably better off just having your own project templates.

@tonygemcd

This comment has been minimized.

Copy link

commented Jan 25, 2015

Best wishes,
Tony

On 2015Äê1ÔÂ9ÈÕ, at 5:13, Charles Han notifications@github.com wrote:

+1 for ui-route and Protractor

¡ª
Reply to this email directly or view it on GitHub.

@nicolasgarnil

This comment has been minimized.

Copy link

commented Jan 27, 2015

Is there an example/tutorial of how to integrate ngtemplates in an angular application generated by this generator?

@oliverwebr

This comment has been minimized.

Copy link

commented Feb 20, 2015

+1 for material support and module file structure

@jonathanobino

This comment has been minimized.

Copy link

commented Mar 4, 2015

+1 for integrating gulp instead of grunt

@pensierinmusica

This comment has been minimized.

Copy link
Contributor

commented Mar 10, 2015

+1 for ui-router

@circy

This comment has been minimized.

Copy link

commented Mar 11, 2015

+1 angular-material
+1 TypeScript Support

@enbashi

This comment has been minimized.

Copy link

commented Mar 14, 2015

+1 for material support

@deerawan

This comment has been minimized.

Copy link

commented Mar 20, 2015

+1 protractor

@madvas

This comment has been minimized.

Copy link

commented Mar 25, 2015

+1 material angular
+1 module file structure
+1 gulp
:)

@brunowego

This comment has been minimized.

Copy link

commented Apr 17, 2015

+1 for adding ui-router

@gintsgints

This comment has been minimized.

Copy link

commented Apr 17, 2015

protractor - already done
ui-router - already done

Please check real status before posting ideas here.

@dancancro

This comment has been minimized.

Copy link
Contributor

commented Apr 17, 2015

Also, send a message to support@github.com requesting that the feature voting feature be added to github so that people don't have to use "+1" comments.

Everyone wants this and the only way it's going to happen is if GitHub support gets flooded with requests.

@kiranps

This comment has been minimized.

Copy link

commented Apr 18, 2015

+1 for ui-router.

@vamsivarikuti

This comment has been minimized.

Copy link

commented Apr 23, 2015

+1 - less
+1 - uncss
+1 - materializecss

Waiting for this project to update more than an year now 😞

@aendrew

This comment has been minimized.

Copy link

commented Apr 25, 2015

Is any of this even relevant anymore? I've been using Swiip/generator-gulp-angular lately, and it's fantastic, and is basically everything this issue is wanting to go for. The only downside is I've had to use doronsever/gulp-angular-subtask for the sub-generators, and it seems out of date and using a different directory structure than gulp-angular.

Perhaps a better use of time would be to create configuration for generator-angular so its sub-generators could more seamlessly be used with projects like gulp-angular and DaftMonk/generator-angular-fullstack. Although I'd really like to see a first-party Yeoman Angular release using Gulp, and ui-router, and E2E testing, and all the radness rolled into, well, gulp-angular, it would also be really good to realise that these other projects have grown in its absence, and figuring out how this ecosystem can work better together might ultimately be more effective.

@gintsgints

This comment has been minimized.

Copy link

commented Apr 26, 2015

I like fact that angular-fullstack generates also server side stuff.

@Frondor

This comment has been minimized.

Copy link

commented May 15, 2015

Implement the use of ui-router as an alternative to the native ngRoute!
@gintsgints it's not implemented yet as far as I know, then how can I change my app to use ui-router instead?

@gintsgints

This comment has been minimized.

Copy link

commented May 16, 2015

You can create new app with ui-router.

@rgstephens

This comment has been minimized.

Copy link

commented May 18, 2015

+1 for adding ui-router

@danpantry

This comment has been minimized.

Copy link

commented Jun 9, 2015

Support for backend implementations, whether that be proxies, rewrite rules, make it more composable for other generators or actually adding a backend REST server (highly unlikely though)

have you considered using webpack? You can use its dev server, webpack-dev-server as a development server that can proxy all urls that match a path to another url. Also would serve well as a build step and allows for using CommonJS require in the browser

@aendrew

This comment has been minimized.

Copy link

commented Jun 14, 2015

@danpantry I've been investigating using Webpack with Angular the last two days, have been fairly impressed so far. This generator looks really cool, despite it being Grunt-based.

@AbraaoAlves

This comment has been minimized.

Copy link

commented Jul 10, 2015

Have you seen the generator-gulp-angular ? What do you think of it?

A long time it has support for several things that have not been started here. eg jade, angularMaterial , typescript , protractor ...

So, what do you recommend?

@aendrew

This comment has been minimized.

Copy link

commented Jul 10, 2015

@AbraaoAlves I mentioned that above, am really impressed by it so far.

@clinton2111

This comment has been minimized.

Copy link

commented Oct 20, 2015

@eddiemonge Add an option to chose Angular-Ui-Router instead of the default router.

@andreybleme

This comment has been minimized.

Copy link

commented Dec 30, 2015

👍 angular-material and angular-ui-router instead of default router.

@anandchristal

This comment has been minimized.

Copy link

commented Mar 12, 2016

@eddiemonge rather than livereload ,why can't move to "browsersync"....highly powerful one.

@federico-coraglio

This comment has been minimized.

Copy link

commented Mar 24, 2016

Do you think to update all dependency to the last version on package.json? because the generator is using https://github.com/gruntjs/grunt-contrib-livereload and it is deprecated.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
You can’t perform that action at this time.