###A basic account management system built in Node.js with the following features:
- New User Account Creation
- Secure Password Reset via Email
- Ability to Update / Delete Account
- Session Tracking for Logged-In Users
- Local Cookie Storage for Returning Users
- Blowfish-based Scheme Password Encryption
###Node-Login is built on top of the following libraries :
- Node.js - Application Server
- Express.js - Node.js Web Framework
- MongoDb - Database Storage
- Jade - HTML Templating Engine
- Stylus - CSS Preprocessor
- EmailJS - Node.js > SMTP Server Middleware
- Moment.js - Lightweight Date Library
- Twitter Bootstrap - UI Component & Layout Library
##Installation & Setup
-
Clone this repository and install its dependencies.
> git clone git://github.com/braitsch/node-login.git node-login > cd node-login > npm install
-
In a separate shell start the MongoDB daemon.
> mongod
-
From within the node-login directory, start the server.
> node app
-
Open a browser window and navigate to: http://localhost:3000
##Password Retrieval
To enable the password retrieval feature it is recommended that you create environment variables for your credentials instead of hard coding them into the email dispatcher module.
To do this on OSX you can simply add them to your .profile or .bashrc file.
export EMAIL_HOST='smtp.gmail.com'
export EMAIL_USER='[email protected]'
export EMAIL_PASS='1234'
##Live Demo
A Live Demo and some thoughts about the app's architecture.
For testing purposes you can view a database dump of all accounts here.
Note this database automatically resets every 24 hours.
##Contributing
Questions and suggestions for improvement are welcome.