Ever wanted to share a certain directory on your network by running just a command? Then this module is exactly what you're looking for: It provides a neat interface for listing the directory's contents and switching into sub folders.
In addition, it's also awesome when it comes to serving static sites. If a directory contains an index.html, serve will automatically render it instead of serving directory contents, and will serve any .html file as a rendered page instead of file's content as plaintext.
Install it (needs at least Node LTS):
npm install -g serveAnd run this command in your terminal:
serve [options] <path>Run this command to see a list of all available options:
serve helpIf you set the --auth flag, the package will look for a username and password in the SERVE_USER and SERVE_PASSWORD environment variables.
As an example, this is how such a command could look like:
SERVE_USER=leo SERVE_PASSWORD=1234 serve --authYou can also use the package inside your application. Just load it:
const serve = require('serve')And call it with flags (run this command for the full list):
const server = serve(__dirname, {
port: 1337,
ignore: ['node_modules']
})Later in the code, you can stop the server using this method:
server.stop()- Fork this repository to your own GitHub account and then clone it to your local device
- Uninstall
serveif it's already installed:npm uninstall -g serve - Link it to the global module directory:
npm link
After that, you can use the serve command everywhere. Here's a list of issues that are great for beginners.
This project used to be called "list" and "micro-list". But thanks to TJ Holowaychuk handing us the new name, it's now called "serve" (which is much more definite).
Leo Lamprecht (@notquiteleo) - ▲ZEIT
