#Repo the Web# A JavaScript shim which provides the registerProtocolHandler JavaScript API to browsers which have not implemented it yet.
Unlike most polyfills, this one must be centrally hosted as it uses localStorage to maintain protocol registrations.
Demo:
- Go to Fake Rhapsody and "Install Rhapsody".
- Go to Fake Music Blog and click one of the music links. Note: Fake bitcoin link to see what an unknown protocol does.
- Repo The Web config to see installed handlers or to delete them all.
##RePo Shim Usage##
###A Music Service### <script src="http://dev.repotheweb.org:8001/include.js"></script> <script> navigator.xregisterProtocolHandler('music', 'http://your-domain.com/rph/uri#%s', 'Great Music App'); </script>
###A Blog with Music Links###
Jimmie's The Cry of Love
TODO add meta tag example
##Hacking on Demo## If you want to work localy on the demo, here is one way to do it.
$ sudo emacs /etc/hosts
Add the following to 127.0.0.1 entry
127.0.0.1 localhost my-machine dev.rhapsody.com dev.repotheweb.org music-blog.com
$ cp src/config.js-dist src/config.js
$ emacs bin/update.sh
$ bin/update.sh
# new terminal 1
$ cd www/repotheweb.org/
$ python -m SimpleHTTPServer 8001
# new terminal 2
$ cd www/rhapsody.com/
$ python -m SimpleHTTPServer 8002
# new terminal 3
$ cd www/music-blog.com/
$ python -m SimpleHTTPServer 8003
# build
$ cd src
$ node ../lib/r.js -o baseUrl=. name=../lib/almond.js include=include out=../www/repotheweb.org/include.js wrap=true optimize=''
# Optional
$ node ../lib/r.js -o baseUrl=. name=../lib/almond.js include=include out=../www/repotheweb.org/include.min.js wrap=true
-
Fake Rhapsody and "Install Rhapsody".
-
Fake Music Blog to use music links. Note: Fake bitcoin link to see what an unknown protocol does.
-
Repo The Web config to see installed handlers.