2017-01-09 20:45:12 +00:00
# tstatic [![CircleCI](https://circleci.com/gh/RealOrangeOne/tstatic/tree/master.svg?style=svg)](https://circleci.com/gh/RealOrangeOne/tstatic/tree/master)
2017-01-21 23:15:59 +00:00
The only static-file server you'll ever need!
2016-05-16 13:20:30 +01:00
2017-01-21 23:15:59 +00:00
### Features:
2017-02-17 22:13:36 +00:00
- Logging - [`winston` ](https://www.npmjs.com/package/winston )
- Basic-Auth - [`basic-auth` ](https://www.npmjs.com/package/basic-auth )
2017-01-21 23:15:59 +00:00
- Custom 404 page
- Optimum Compression - [`compression` ](https://www.npmjs.com/package/compression )
- Security checks / headers - [`helmet` ](https://www.npmjs.com/package/helmet )
- Opbeat error-reporting - [docs ](https://opbeat.com/docs/articles/get-started-with-express/ )
2017-02-17 22:13:36 +00:00
- Whitelist IP Addresses - [`express-ip-access-control` ](https://www.npmjs.com/package/express-ip-access-control )
- Directory Listing - [`serve-index` ](https://www.npmjs.com/package/serve-index )
2016-05-16 13:20:30 +01:00
2017-02-17 22:13:36 +00:00
### Usage
2017-01-21 23:15:59 +00:00
```bash
2017-02-17 22:13:36 +00:00
tstatic < dir > [options]
-h --help Show this screen.
--version Show version.
-p < port > --port=< port > Port to listen on.
-b < auth > --basic-auth=< auth > Enable basic-auth.
-i < ips > --ips=< ips > Allowed IP addresses.
-l --list-dir List Directory.
--opbeat Enable Opbeat.
-o --open Open in browser after start.
2017-01-21 23:15:59 +00:00
```
2017-02-17 22:13:36 +00:00
`dir` is where your static files are.
2016-05-16 13:20:30 +01:00
2017-02-17 22:13:36 +00:00
404 errors will return with `<dir>/.404.html` , with status code 404. If this file doesnt exist, the default error page will be shown.
2016-05-16 13:20:30 +01:00
2017-02-17 22:13:36 +00:00
### Configuration
2017-01-21 23:15:59 +00:00
2017-02-17 22:13:36 +00:00
##### `port`
The port for the server to listen on. Currently supports plain HTTP only
2017-01-21 23:15:59 +00:00
2017-02-17 22:13:36 +00:00
##### `basic-auth`
Enable basic-auth for all paths. Currently only supports single credentals.
2017-01-21 23:15:59 +00:00
2017-02-17 22:13:36 +00:00
Format:`-b username:password`
2017-01-21 23:15:59 +00:00
2017-02-17 22:13:36 +00:00
##### `ips`
IP addresses that are allowed to connect to the server.
Format: `-i 192.168.1.100,192.168.1.101`
##### `list-dir`
Enables directory listing. Allow browseing
##### `opbeat`
Enable opbeat error reporting. `--opbeat` only enables this, configuration is done using [environment varables ](https://opbeat.com/docs/articles/get-started-with-express/#appId ).
##### `open`
Open the server in the browser one started. It will open in your default browser, and use url `http://0.0.0.0:<port>` .
2016-05-16 13:20:30 +01:00