Skip to content
A great place to start for a basic web application
JavaScript Handlebars HTML CSS
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
config
controllers
data
lib
public
test adding bower support and changing project structure around bower Jul 17, 2014
views
.gitignore
.travis.yml
Gruntfile.js
README.md
app.js
bower.json
package.json

README.md

Basic Application Boilerplate Build Status

This project contains the foundations for a web application using some of my favorite technologies. I use it is a reference when I start creating a new application.

This is a Node/Backbone application. Node.js is used for my server and Backbone.js is used as my client side JS framework.

Technologies Used

Server Side

  1. Express.js as my http server framework. Its Great!
  2. Express3 Handlebars for my view engine integration
  3. mongodb for session storage and data storage

Client Side

  1. jquery.js why do you ask?
  2. require.js AMD script loader because your mom told you so
  3. Backbone.js for client side architecture
  4. Underscore.js because we have been together so long and we are comfortable

Building and Packaging

  1. Grunt.js for task automation
  2. Less CSS pre-processor for more maintainable css
  3. Bower for my client side dependency package manager

Testing

  1. QUnite

Getting Started

  1. Clone project
    • https://github.com/dwaltz/Basic-Application-Boilerplate.git
  2. Install/run local instance of mongodb
  3. Switch into the folder you just cloned and run npm install
  4. Then install your client dependencies by running bower install
  5. Start the app with 'node app'

Build Process via GruntJS

  1. default

    • Runs jshint
    • Runs qunit task
    • Runs optimizeJS task
    • Runs optimizeCSS task
    • Optimizes Images
  2. watch-css

    • Runs LESS watcher
  3. optimizeJS (start of the optimized version)

    • Runs clean on optimized folder
    • Runs requirejs, minifying and comibining JS
  4. optimizeCSS

    • Runs recess on public/css/styles.less
      • compresses to public/css/styles.css
  5. test
    • Runs jshint
    • Runs qunit task

Items to work on

  1. Implement server side code testing
  2. Create more complete client application example

Special Thanks

Easy Node Authentication Tutorial

Something went wrong with that request. Please try again.