Skip to main content
Deno 2 is finally here šŸŽ‰ļø
Learn more

Shurley

deno npm

Iā€™ll give you the right URL, but donā€™t call me Shirley!

Parses URLs from user input (with potential typos in protocols, bad copy+paste, etc.) and returns a proper URL.

It has no dependencies, and itā€™s meant to be this simple.

Some things to note:

  1. It doesnā€™t check if the URL exists, you can do that in many different ways.

  2. It assumes only http and https protocols for URLs.

  3. If thereā€™s a ā€œmistakeā€ in the URL protocol, it defaults to https.

Usage

It only has a single method: parse(url: string) which returns the same string, parsed.

Deno

import shurley from 'https://deno.land/x/shurley@1.0.5/mod.ts';

const parsedUrl = shurley.parse('example.com');

console.log(parsedUrl); // Outputs 'https://example.com'

Node/NPM

npm install --save-exact shurley
const shurley = require('shurley'); // or import shurley from 'shurley';

const parsedUrl = shurley.parse('example.com');

console.log(parsedUrl); // Outputs 'https://example.com'

Development

Requires deno.

make format
make test

Publishing

After committing and pushing, just run make publish VERSION=x.y.z.