Most interesting in the regard of (eventually) being able to replace Selenium in our stack. While currently in an early stage - it will be capable of doing pretty much everything Selenium can do - without requiring Java. Functional / UI / E2E testing with a Node.js based stack would allow an even greater audience to create meaningful tests.
It is dual-licensed, MIT and GPL. Choose the MIT License to do what the fk you like. Choose the GPL License if you're building some GPL software yourself, and need all the components to be GPL-licensed as well. Maybe have a look at http://en.wikipedia.org/wiki/Multi-licensing
Funny… URI.js is more or less a port of my PHP URL class. Zend Framework has one. look at https://gist.github.com/1499238 to get you started. (Not a chainable API and not as powerful as URI.js either). The path resolving can be taken from the code I wrote for Smarty a couple of months ago: http://code.google.com/p/smarty-php/source/browse/trunk/dist... - lemme know if/when/how you're done… interested in using the PHP version myself ;)
Do you honestly think I ever thought about my dimwit-no-rocket-science URI.js ending up on hacker news? But, to satisfy hacker news readers, I added the terms "fluent interface" and "method chaining" (while preserving "jQuery-like" for normal folk…)
According to Google's Closure Compiler URI.js is compiled down to 11.81KB (3.38KB gzipped)
Including punycode.js and IPv6.js you get 15.03KB (4.87KB gzipped)
added your link to the alternatives section in README.md
I figured more people understand "jQuery-style" than "fluent interface" / "method chaining". Pretty much like you call a tissue "Kleenex" (or "Tempo" in German).
"search" is the term for "query string" used throughout javascript. I prefer "query" (as in "query string"). I use query(), but made search() available to those, who are used to window.location.search
Github has a nice little feature called issue tracking. Feel free to post your thoughts there. I'd be happy to figure something out. URI.js wasn't intended to limit anyone in what they were trying to do. It just never occured to me that ?foo=bar&foo=bar could be intentional.