💪 web server 🙀 with all the bells 🔔 and whistles ✨
A kickass
Uses hapi loaded with most important plugins (Boom, Vision, Inert, et al.) and dynamically configures your routes
Features
- Out-of-the-box
/ping
and a/healthcheck
(using health-checkup) endpoints✅ -
Swagger API
/docs
✅ - Response pagination using hapi-pagination
✅ - Logs HTTP requests and server errors using modern-logger
✅
How to install
npm install serverful
How to use
Use it in your app
Load module and start a server
const Serverful = require('serverful')
const server = new Serverful()
server.start()
Available environment variables
Variable | Description | Required | Default value |
---|---|---|---|
NAME | The name of the app. | false | undefined |
VERSION | The version of the app. | false | undefined |
PORT | The port to be used by the HTTP server. | false | 3000 |
API_KEYS | The secret keys that should be used when securing endpoints. | false | undefined |
SO_TIMEOUT | TCP socket connection timeout. | false | 120000 |
BASE_PATH | Base path to be prefixed to all available endpoint paths. | false | / |
PING_PATH | Endpoint path for pinging app. | false | /ping |
HEALTHCHECK_PATH | Endpoint for checking app health. | false | /healthcheck |
LOG_LEVEL | The log level verbosity. | false | info |
ENVIRONMENT | The environment the app is running on. | false | undefined |
ROLLBAR_API_KEY | The server API key used to talk with Rollbar. | false | undefined |
How to contribute
You can contribute either with code (e.g., new features, bug fixes and documentation) or by donating 5 EUR. You can read the contributing guidelines for instructions on how to contribute with code.
All donation proceedings will go to the Sverige för UNHCR, a swedish partner of the UNHCR - The UN Refugee Agency, a global organisation dedicated to saving lives, protecting rights and building a better future for refugees, forcibly displaced communities and stateless people.
Used by
-
get-me-a-date -
😍 Help me get a💘 date tonight🌛 -
watch-rtp-play -
📺 Watch and📻 listen🇵🇹 RTP Play without a💻 browser -
browser-as-a-service - A web browser
🌎 hosted as a service, to render your JavaScript web pages as HTML -
my-flic-hub - My own flic hub
™️ for the🌍 world's smartest🔴 button
License
Read the license for permissions and limitations.