New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

spirit-router

Package Overview
Dependencies
Maintainers
1
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

spirit-router

fast router for spirit

  • 0.5.0
  • latest
  • Source
  • npm
  • Socket score

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

spirit-router

A router for spirit.

When combined with spirit, it provides a low level extensible framework (it is not a full stack batteries included framework or a boilerplate). It is meant as an alternative to Express, Koa, and Hapi.

Build Status Coverage Status Join the chat at https://gitter.im/spirit-js/spirit

It emphasizes clear separation of code between HTTP and your own code. Routes are normal javascript functions. That means a route can be as simple as:

function() { return "Hello World" }

This makes testing, re-using, and reading your code much easier, as "it's just javascript".

Features

  • Routes are just normal functions that return something. No more proprietary (req, res, next) functions. This makes it easier to test, re-use, read your routes.

  • Compatible with most Express middleware. (via spirit-express) Re-using existing code is important.

  • Error handling with then & catch. Promises are "first class". And so async/await compatible.

  • Fast, fast!. It outperforms other web frameworks (Express, Koa, Hapi). Article showing the performance difference.

Example

const {adapter} = require("spirit").node
const route = require("spirit-router")
const http = require("http")

const greet = (name) => {
  return "Hello, " + name
}

const app = route.define([
  route.get("/:name", ["name"], greet)
])

http.createServer(adapter(app)).listen(3000)

More examples in can be found here.

Getting Started

To install: npm install spirit spirit-router

Resources for getting started:

There are a set of videos that quickly go over different topics in spirit.

Contributing

All contributions are appreciated and welcomed.

For backwards incompatible changes, or large changes, it would be best if you opened an issue before hand to outline your plans (to avoid conflict later on).

The code style omits ending semi-colons. It also does not use camel case. And one-liners should be avoided unless it's very clear.

To run tests, use make test. This will also build changes to src/*, if you do not have "make" installed, you can look at the Makefile to see the steps to accomplish the task.

Keywords

FAQs

Package last updated on 29 Mar 2017

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