New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

service-scaff

Package Overview
Dependencies
Maintainers
1
Versions
72
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

service-scaff

resource scaff for services

latest
Source
npmnpm
Version
2.3.6
Version published
Maintainers
1
Created
Source

Build Status Coverage Status

Express bundled with Passport authentication, Redis sessions, morgan logs

Usage


var resources = {
	redis: redisConfigOrClient,
	mysql: mysqlConfigOrClient,
	mongo: mongoConfigOrClient,
	sphinxql: sphinxqlConfigOrClient,
	rabbit: rabbitConfigOrClient
}

var server = require('service-scaff');
server
	.resources(config)
	.web()
	.register('my-service', '/', ['my-service-alias'])
	.startOnResourcesConnected()





// OLD

var server = require('express-middleware-bundle');

//------------------------------------
// set redis config for sessions, remember me authentication strategy
//------------------------------------
server.redis({
	//redis config
})

//------------------------------------
// set mysql config for local and api authentication stategies
//------------------------------------
server.mysql({
	// mysql config
})

//------------------------------------
// add auth (remember me, apikey, local) and session middleware
//------------------------------------
server.web()

//------------------------------------
// mount static assest to path
//------------------------------------
server.addStaticDir('./css', 'static');
server.addStaticDir('./js', 'static');

//------------------------------------
// mount static assest to root
//------------------------------------
server.addStaticDir('./root');

//------------------------------------
// use jade templates from a dir
//------------------------------------
server.addJade('./jade');

//------------------------------------
// use built in login and logout handlers
//------------------------------------
server.post('/login', server.login.bind(server));
server.get('/logout', server.logout.bind(server));

//------------------------------------
// add routes that dont need authentication
//------------------------------------
server.get(
	'/nonauth-route',
	function(req,res,next){
		res.end('you are NOT authenticated')
	}
);

//------------------------------------
// every route after this requires authentication
//------------------------------------
server.use(server.authenticated.bind(server));

server.get(
	'/auth-route',
	function(req,res,next){
		res.end('you are authenticated')
	}
)

//------------------------------------
// check user roles
//------------------------------------
server.get(
	'/needARole',
	server.checkRoles.bind(server,['roleA','roleB'])
	function(req,res,next){
		res.end('you have either roleA or roleB')
	}
)

//------------------------------------
// check user roles for conditional middleware
//------------------------------------
server.get(
	'/needARoleForSomeMiddleware',
	getSomeData,
	server.checkRolesWrapper.bind(server,['roleA'], conditionalMiddlewareToModifyData),
	returnData
)


server.start(port, function(){
	// server has started
})

Make a fresh server object:

var server2 = server.ExpressMiddlewareBundle();

Keywords

express

FAQs

Package last updated on 26 May 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts