ExpressMVC v0.0.2
ExpressMVC
A simple boilerplate library to assist in the setup of an expressjs application that follows the MVC pattern. The setup should be comfortable and familiar to most PHP developers.
How to install
Make sure the following environment variables are set.
export MYSQL_CONFIG=/path/to/bin/mysql_config
Install module via npm @see npmjs.org
npm install ExpressMVC
Install the following modules globally. You may need sudo privileges
npm install -g nodemon
npm install -g vows
How to run your application
The suggested way to run your application is:
$ nodemon /path/to/my/main.js
or (if you require the MySQL library)
$ DYLD_LIBRARY_PATH='/path/to/my/mysql/lib' nodemon /path/to/my/main.js
Dependencies
- node server side javascript based on V8 JavaScript
- npm the node package manager
Required npm modules
- underscore - a utility belt for javascript
- underscore.string - string extensions for the underscore library
- express a node web framework.
- express-namespace namespaced route support
- express-params param pre-condition functions
- express-form provides data filtering and validation as route middleware for your Express applications.
- connect-form a multipart / urlencoded form parsing middleware
- generic-pool
- db-mysql MySQL database binding
- xml2js XML parsing for node
- moment - a javascript date library
that helps create, manipulate, and format dates without extending the
Date
prototype. - uquery
Suggested modules
- nodemon Monitor for any changes in your node.js application and automatically restart the server.
- vows Asynchronous BDD & continuous integration for node.js
Contributors
The following are major contributors of ExpressMVC
- Nathan A Sculli (Kapinko)
License
All original code within this library is Copyright (c) 2011 Nathan Anthony Sculli <nathan.sculli@kapinko.com>
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.