https://github.com/rsms/serve-http
Simple, safe single-file local web server
https://github.com/rsms/serve-http
Last synced: 12 months ago
JSON representation
Simple, safe single-file local web server
- Host: GitHub
- URL: https://github.com/rsms/serve-http
- Owner: rsms
- License: mit
- Created: 2019-11-27T18:14:08.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-06-18T18:41:21.000Z (almost 2 years ago)
- Last Synced: 2025-06-13T05:48:10.099Z (about 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 570 KB
- Stars: 48
- Watchers: 2
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# serve-http
Simple single-file local web server
`npm i -g serve-http`
- Single file without dependencies — copy it into your project.
- Livereload — HTML pages reload automatically in web browsers as they change.
- Safety feature: Only serves local connections unless given explicit command-line argument.
- Safety feature: Refuses to serve directories outside home directory to remote connections.
Install through [`npm i -g serve-http`](https://www.npmjs.com/package/serve-http) or by copying
[`serve-http`](https://raw.githubusercontent.com/rsms/serve-http/master/serve-http)
into your project (no dependencies; entire thing contained in a single small file.)
```
$ ./serve-http -help
Usage: serve-http [options] []
Directory to serve files from. Defaults to the current directory.
Options:
-p, -port Listen on specific
-host Bind to instead of "localhost"
-public Accept connections from anywhere (same as -host "")
-q, -quiet Don't log requests
-no-livereload Disable livereload
-no-dirlist Disable directory listing
-dirlist-hidden Show files beginning with "." in directory listings
-h, -help Show help and exit
-version Print version to stdout and exit
Examples:
serve-http
Serve current directory on some available port
serve-http -p 8080 docs
Serve directory ./docs locally on port 8080
serve-http -public -no-dirlist
Serve current directory publicly on some available port,
without directory listing.
```
## JavaScript API
serve-http can also be used as a library:
```js
const { createServer } = require("serve-http")
const server = createServer({ pubdir: __dirname, port: 1234 })
// `server` is a standard nodejs http server instance.
```
See TypeScript type definitions for documentation of the API:
[`serve-http.d.ts`](serve-http.d.ts)