parse-github-repo-url

Parse a GitHub URL for user/project@version

Usage no npm install needed!

<script type="module">
  import parseGithubRepoUrl from 'https://cdn.skypack.dev/parse-github-repo-url';
</script>

README

parse-github-repo-url

Parse a GitHub URL for user/project@version

Build Status semantic-release

Features

Parse all the stupid ways you could write a GitHub URL in your damn package.json. Supports:

  • <user>/<repo#<commit>
  • git:// and .git w/ #commit or @version
  • git@ and https:git@
  • www.github.com
  • gitlab.<my company name>.com/user/repo.git parsing
  • All 5 different ways you could download a freaking tarball/zipball

API

[user, repo, version] = parse(url)

version could be falsey, a semantic version, a commit, or a branch, etc.

var parse = require('parse-github-repo-url')
parse('component/emitter#1') // => ['component', 'emitter', '1']

See the tests for all the different types of supported URLs.