MCPcopy Index your code
hub / github.com/articulate/paperplane

github.com/articulate/paperplane @v3.1.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v3.1.1 ↗ · + Follow
37 symbols 59 edges 51 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

paperplane

Lighter-than-air node.js server framework.

npm version npm downloads Build Status Coverage Status

Documentation

Introduction

The main goal of paperplane is to make building a node.js server easy, without all of the configuration or imperative boilerplate required for other server frameworks. If you prefer to build apps with function composition or even a point-free style, then paperplane is for you.

With paperplane you get all of these out-of-the-box:

Let's try a quick Hello World example server. It accepts a :name param in the url, and then includes that name in the json response body.

const { compose } = require('ramda')
const http = require('http')
const { json, logger, methods, mount, routes } = require('paperplane')

const hello = req => ({
  message: `Hello ${req.params.name}!`
})

const app = routes({
  '/hello/:name': methods({
    GET: compose(json, hello)
  })
})

http.createServer(mount({ app })).listen(3000, logger)

So simple and functional, with an easily readable routing table and pure functions for the route handler. If that sounds like fun to you, then read the Getting started guide or the API docs to learn more.

Core symbols most depended-on inside this repo

routes
called by 8
lib/routes.js
use
called by 8
lib/use.js
assertBody
called by 5
test/lib/assertBody.js
basics
called by 2
lib/cors.js
wrapError
called by 2
lib/mount.js
corsifyError
called by 1
lib/cors.js
chooseOrigin
called by 1
lib/cors.js
options
called by 1
lib/cors.js

Shape

Function 37

Languages

TypeScript100%

Modules by API surface

test/use.js5 symbols
lib/mount.js4 symbols
lib/cors.js4 symbols
demo/lib/db.js4 symbols
test/cors.js3 symbols
lib/wrap.js2 symbols
lib/error.js2 symbols
test/lib/errorStream.js1 symbols
test/lib/assertBody.js1 symbols
lib/writeLambda.js1 symbols
lib/writeHTTP.js1 symbols
lib/use.js1 symbols

For agents

$ claude mcp add paperplane \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact