Proof of concept for converting any content into a domain name.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information. Update Jan 1, 2014
background.js first commit Dec 23, 2013
hashnslash.crx adding package Dec 23, 2013
jquery-1.10.1.min.js first commit Dec 23, 2013
manifest.json first commit Dec 23, 2013
sha1.js first commit Dec 23, 2013
transform_links.js if url is absent, use contents of a tag Dec 23, 2013
utils.js first commit Dec 23, 2013


Hash-n-Slash is a proof-of-concept Chrome extension that allows any text to be used as a domain name. By turning domain names into hashes, we allow for a greater flexibility of exactly what can be used to point to an online resource.

demo gif


Available in the Chrome Web Store here, or as the .crx file here


Hash-n-Slash currently does 3 things:

  • Any url, typed in the url bar, that starts with #<tab> will be intercepted and SHA-1 hashed to a .com address.
  • Web pages are scanned for links that start with #://, which are then SHA-1 hashed to a .com address.
  • If a link's href contains just #://, the link's textContent will be SHA-1 hashed to a .com address.

demo transformation

But why?

Good domain names are pretty scarce. It's a source of frustration for anyone who has ever tried to buy a domain. I thought it might be fun if there was a hashing scheme that allowed more flexibility in mapping resources to locations on the web. Under a domain hashing scheme, the following might be possible:

  • Documents could have unique resources on the web. A document's sha1sum could be a valid domain name to find the document itself, or other related resources about the doc. eg sha1sum ForestFire.pdf =>
  • More expressive domain names. Quotes or phrases could point somewhere. eg "For sale: baby shoes, never worn" =>
  • Bind searches to domain names, eg "food in chicago" =>

Why this is a bad idea that will never work™

This is just for fun! A proof of concept.