Client-heavy stack for node development.
- Grunt: Task automation
- Bower: Third-pary client libraries
- Express: Web server for node
- LESS CSS: Programmatic CSS
Download + run bootstrap.sh (this will install a local version of node, grunt and yeoman).
- Install node + npm
npm install -g grunt yo generator-closure-stack
Limitations / todos
- does not make use of closure builder to assemble client JS
- closure library is only used for namespacing
src code for your application
src/client code run in the browser
src/client/js/externs extern files for the closure compiler
src/client/js/third_party third party code that is included directly on the page, bypassing closure compiler (except for
src/client/js/JS_NAMESPACE js code for your application
src/client/js/listing.json an ordered listing of code for your application
src/client/less LESS stylesheets for your application
src/client/soy soy templates for your application
src/server code run on the server
src/server/soy soy templates used on the server.
src/tasks grunt tasks
config app configuration (like server port, common paths etc) used by grunt tasks. New files are automatically imported
as grunt configs and can cross-reference each other.
dependencies needed binaries like node and the closure/soy compiler jars.
node_modules node dependencies.