This project will give you a scaffolding/boilerplate of the node/express/socket.io stack. It uses mongodb for database models and redis for session storage. Fork at will! :)
- node.js
- express
- socket.io
- gulp
- convict
- browserify
- envify
- reactify
- react
- stylus
- bootstrap
- fontawesome
brew/apt-get install nodejs
brew/apt-get install redis
brew/apt-get install mongodb
npm install -g mocha
npm install -g gulp
npm install
PORT
- Port exposed by this component.- example:
3000
DEBUG
- Debug output (* for all) (optional)- example:
*
NODE_ENV
- Environment ('development', 'staging', 'production')- example:
development
CLIENT_API_PATH
- Path to the client REST api (relative)- example:
/api
APPSECRET
- Application session secret- example:
sOmeCrAzYhAsH894372
SESSION_KEY
- Application session secret (optional)- example:
express.sid
(defaults toconnect.sid
) REDIS_URL
- Redis url (including authentication)- example:
redis://user:pass@localhost:6379
REDIS_DB
- Redis database number (optional)- example:
1
REDIS_SESSION_PREFIX
- Prefix for redis session entries (optional)- example:
sess:
MONGO_URL
- MongoDB url (including authentication)- example:
mongodb://user:pass@localhost:27017/mydatabase
npm test
- set environment variables
gulp
- (create a shellscript with the above for convenience if you want)
- navigate your browser to
http://localhost:3000
(or whatever port you chose forPORT
)
#!/bin/sh
export PORT=3000 \
export DEBUG="*:-engine:polling" \
export NODE_ENV="production" \
export APPSECRET="somecrazyhash" \
export CLIENT_API_PATH="/api" \
export SESSION_KEY="express.sid" \
export MONGO_URL="mongodb://localhost/express-basic-app" \
export REDIS_URL="redis://localhost:6379" \
gulp develop