This module is designed to provide an opinionated Express.js configuration that adds Parse Server for database management and Ghost as a CMS. Ohm also implements a simple session tracking service which allows session management for both express and socket.io (more details to come).
Set up environment
Assuming you are running homebrew up-to-date on a Mac, here is how you configure your dev environment
brew install mongodb
brew install nvm
brew install redis
brew services start mongodb
nvm install v6.10.2
nvm alias default v6.10.2
npm install -g bower
redis-server &
Install
npm install --save ohm
Usage
create a new file server.js
and create a config file.
(function() {
'use strict';
const config = require('./config.js');
const Ohm = require('ohm');
module.exports = new Ohm(config);
}());
required params
env
: environment variablehost
: hostnameport
: portROUTES
: location of the site's regular routesVIEWS_PATH:
: location of the pug views directorySTATIC_PATH
: location of where static files should be servedSESSION_KEY
: the key used for the cookie
optional params:
PARSE_PATH
: route for parse serverPARSE_DASHBOARD
: route for parse dashboardPARSE_APPLICATION_ID
PARSE_JAVASCRIPT_KEY
PARSE_MASTER_KEY
GHOST_PATH
: the path that ghost CMS will useGHOST_CONFIG
: location of the ghost configSOCKETS
: location of the site's sockets routesSOCKETIO_SESSION_SECRET
: Secret used for socket.io authMONGO_URI
: mongdb url (e.g. mongodb://MONGO_HOST:MONGO_PORT)MONGO_DB
: Mongodb database nameMONGO_PORT
: port for mongoDB (default localhost)MONGO_HOST
: host for mongoDB (default 27017)REDIS_PORT
: port for redis (default 6379)REDIS_HOST
: host for redis (default localhost)
Dependencies:
For Full details see package.json