I recommend avoiding gulp and grunt and any other build systems. They're completely unnecessary. npm and webpack are sufficient. npm works well as a simple task runner, and there are webpack plugins to do pretty much anything you'd ever do with grunt or gulp.
I'm currently studying computer science in germany. In a team of 5 we created the above project for a software engineering assignment. But in the end I wrote the entire code part alone. :D
It implements a simulated elevator and displays the internal state in a UML state machine diagram.
It features:
- Grunt build system
- JSX + ES6 to ES5 transpiler using babelify and browserify
- LESS to CSS transpiler
- karma + jasmine test system
- live reloading ("grunt serve")
- building a static page from the source code ("grunt dist")
- building a nw.js based app from the static page ("grunt build")It provides an environment for development, testing, and production environments. In development, hotloading / live reload of assets when possible, and refresh otherwise. In production it'll do proper cache busting and asset minification. While testing it generates code coverage!
Best part? No gulp or grunt. It's all basically a heavily commented webpack config and a few npm scripts.
All of the people that have responded to you so far seem to disregard at least one of the details that I consider important. Mainly, it should have all the tasks needed for a web app that you plan on working on for a period longer than a few days, and it shouldn't make you deal with more build tool bullshit than is necessary.
I don't have any examples of big projects using web-app without modifications, however, I have a small example: quad-blog [2], which is my blog. It's written with fluxible, and the webpack config for that project is based on web-app. It takes it a step further and does isomorphic (or universal) javascript, so it'll do server-side rendering and then delegate to the client once it's loaded. One other highlight of the project is that it uses Koa, so you get real middleware (as in, middleware that behaves like a stack). Oh, and it uses Sequelize and shows how you'd do database migrations with an awesome relational database: Postgres, instead of taking the NoSQL shortcut (which is woefully inadequate for a lot of applications).
[0] http://github.com/cesarandreu/web-app
[1] https://blog.cesarandreu.com/posts/a_reasonable_starting_poi...
It allows you to immediately start writing ES6 code for React without the spending hours setting everything up.
It's a work in progress, and any feedback would be appreciated!
Check it out: http://react-in-meteor.readthedocs.org/en/latest/
(I work at Meteor)
https://github.com/gaearon/redux/tree/master/examples/todomv...
Just took me half an hour from start to getting react+ES6 running.
[0] http://webpack.github.io/docs/tutorials/getting-started/[0] https://github.com/facebook/nuclide
[1] https://github.com/facebook/nuclide/tree/master/pkg/nuclide/...