Socket
Book a DemoInstallSign in
Socket

express-print-routes

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

express-print-routes

Prints the tree of Express routes and middlewares to a file

1.0.0
latest
Source
npmnpm
Version published
Weekly downloads
980
7.22%
Maintainers
1
Weekly downloads
 
Created
Source

Lost Track of All Your Express Routes And Middlewares?!

express-print-routes prints the tree of all your Express routes and middlewares to a file.

You get this for example:

router                                                                                                         
 ├── query                            *                                                           
 ├── expressInit                      *                                                           
 ├── logger                           *                                                           
 ├── hpp                              *                                                           
 ├── router                           /^\/api\/?(?=\/|$)/                                         
 │   router                                                                                                    
 │    ├── bound dispatch              /users/:id             GET
 │    │    └── __getUser              /                      GET
 │    │   
 │    └── bound dispatch              /users/:id             POST
 │         ├── __checkAccessRights    /                      POST
 │         └── __updateUser           /                      POST
 │        
 │   
 ├── serveStatic                      *                                                           
 └── __handleError                    *                                                           

Installation

Build Status Coverage Status Dependency Status

NPM Stats

This is a module for node.js and is installed via npm:

npm install express-print-routes --save-dev

Usage

Call express-print-routes after you registered all your routes / middlewares:

var app = express();

// Register all your routes / middlewares


if (process.env.NODE_ENV === 'development') { // Only in dev environment

    // Absolute path to output file
    var path = require('path');
    var filepath = path.join(__dirname, '../docs/routes.generated.txt');

    // Invoke express-print-routes
    require('express-print-routes')(app, filepath);
    
}

Consider giving your middlewares names when they appear as <anonymous>. Often, they are added as anonymous functions like this:

app.use(function (req, res, next) {
    console.log('Hello world'!);
    next();
});

Give the middleware a name like this:

app.use(function __helloWorld(req, res, next) { // <-- '__helloWorld' will be printed now 
    console.log('Hello world'!);
    next();
});

Why printing to a file and not just to the console?

It is good practice to commit the generated file to your version control system. This way you can review all changes like added / renamed / removed routes and added / removed middlewares.

Contributing

To set up your development environment for express-print-routes:

  • Clone this repo to your desktop,
  • in the shell cd to the main folder,
  • hit npm install,
  • hit npm install gulp -g if you haven't installed gulp globally yet, and
  • run gulp dev. (Or run node ./node_modules/.bin/gulp dev if you don't want to install gulp globally.)

gulp dev watches all source files and if you save some changes it will lint the code and execute all tests. The test coverage report can be viewed from ./coverage/lcov-report/index.html.

If you want to debug a test you should use gulp test-without-coverage to run all tests without obscuring the code by the test coverage instrumentation.

Change History

  • v1.0.0 (2016-05-01)
    • Initial version

License (ISC)

In case you never heard about the ISC license it is functionally equivalent to the MIT license.

See the LICENSE file for details.

Keywords

endpoint

FAQs

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

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.