is-valid-hostname

Validate hostname based on RFC-1123

Usage no npm install needed!

<script type="module">
  import isValidHostname from 'https://cdn.skypack.dev/is-valid-hostname';
</script>

README

is-valid-hostname

Validate hostname in JavaScript based on RFC-1123.

Demo

https://lab.miguelmota.com/is-valid-hostname

Install

npm install is-valid-hostname

Usage

const isValidHostname = require('is-valid-hostname')

isValidHostname('localhost') // true
isValidHostname('example.com') // true
isValidHostname('foo.example.com') // true
isValidHostname('bar.foo.example.com') // true
isValidHostname('exa-mple.co.uk') // true
isValidHostname('xn--80ak6aa92e.com') // true
isValidHostname('9gag.com') // true
isValidHostname('8.8.8.8') // true
isValidHostname('127.0.0.1') // true
isValidHostname('exa_mple.com') // false
isValidHostname('-example.com') // false
isValidHostname('example.com:3000') // false
isValidHostname('8.8.8.8:3000') // false

View more examples.

Test

npm test

FAQ

  • Q: Why are numbers allowed in top-level domain?

    • A: Numbers in TLD are allowed under RFC-1123. See this answer for more information.

License

MIT