0.1.0 • Published 5 years ago

local-hostname v0.1.0

Weekly downloads
45
License
MIT
Repository
github
Last release
5 years ago

local-hostname build status codecov

A tiny (171B) utility to check if a hostname is local

Compares an incoming URL hostname segment against a manually constructed RegExp pattern. The pattern supports IPV4 and IPV6 addresses and is derived from RFC1918 – see Wikipedia explainer.

This module supports browser and Node.js environments. It is made available in three formats:

  • CommonJS: dist/localhost.js
  • ES Module: dist/localhost.mjs
  • UMD: dist/localhost.min.js

Install

$ npm install --save local-hostname

Usage

import localhost from 'local-hostname';

localhost('localhost'); //=> true
localhost('127.0.254.1'); //=> true
localhost('hello.localhost'); //=> true
localhost('192.168.0.1'); //=> true

localhost('localhost.123'); //=> false
localhost('192.167.100.300'); //=> false
localhost('168.254.1.255'); //=> false
localhost('example.com'); //=> false

API

localhost(hostname)

Returns: Boolean

hostname

Type: String

The hostname segment of a valid URL.

Important: The localhost function does not parse or format the URL for you!

Contributing

PRs are welcome, of course! However, please open an issue first to discuss the planned changes :)

I am by no stretch of the imagination a networking expert – I most likely missed cases and/or ranges.

To change the RegExp pattern, modify or add the segment(s) inside src/build.js, run it with node, and then paste the result into the src/index.js file.

License

MIT © Luke Edwards