Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

blacktide

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

blacktide

Lightweight back-end framework for Micro-services and APIs with added security

  • 1.0.0-beta.4
  • npm
  • Socket score

Version published
Weekly downloads
1
decreased by-50%
Maintainers
1
Weekly downloads
 
Created
Source

Blacktide

Blacktide is a lightweight back-end framework with optimization in security and based on Express.

Notes

* Beta version, not yet ready for production
* Works great stand alone, works better with the blacktide-cli tool
* For quick development
* REST
* No static content
* No sessions

Installation

$ npm i -S blacktide

Configuration

See blacktide-cli for more information about the cli tool to aid development in Blacktide.

How to run with pm2

$ NODE_ENV=production pm2 start services/ --name 'myapp'

Getting started (with blacktide-cli)

Usage

Simple

	const blacktide = require( 'blacktide' );

	blacktide
		.service( '/hello', { // the / is optional

			get: ( req, res, next ) =>
			{

				'use strict';

				res.json( { content: 'hello world' } );

			}

		} );

At root or /

	const blacktide = require( 'blacktide' );

	blacktide
		.service( '', { // to attach to / just leave the service name empty

			get: ( req, res, next ) =>
			{

				'use strict';

				res.json( { content: 'hello world' } );

			}

		} );

You can also access Express via:

	const blacktide = require( 'blacktide' );

	blacktide
		.app
		.use( ( req, res, next ) => {

		} );

Example of a full service:

	const blacktide = require( 'blacktide' );

	blacktide
		.service( 'users', {

			// Called before all routes.
			before ( req, res, next ) {

				'use strict';

				req.passing = true;

				next();

			},

			// /users/1
			get ( req, res ) {

				'use strict';

				res.json( {
					body: req.body,
					params: req.params,
					query: req.query
				} );

			},

			// /users
			find ( req, res ) {

				'use strict';

				res.json( {
					body: req.body,
					params: req.params,
					query: req.query
				} );

			},

			// /users
			create ( req, res ) {

				'use strict';

				res.json( {
					body: req.body,
					params: req.params,
					query: req.query
				} );

			},

			// /users/1
			put ( req, res ) {

				'use strict';

				res.json( {
					body: req.body,
					params: req.params,
					query: req.query
				} );

			},

			// /users/1
			patch ( req, res ) {

				'use strict';

				res.json( {
					body: req.body,
					params: req.params,
					query: req.query
				} );

			},

			// /users/1
			delete ( req, res ) {

				'use strict';

				res.json( {
					body: req.body,
					params: req.params,
					query: req.query
				} );

			},

			// Called after all routes.
			after ( req, res, next ) {

				'use strict';

				console.log( req.passing );

				next();

			}

		} );

Run some tests

npm test

License

MIT

Keywords

FAQs

Package last updated on 30 Dec 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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc