Thanks for the links. You are correct that I probably won't be able to support all git repos because of memory constraints and unless I get special APIs from the browser I won't be able to do git protocol or git over ssh. I do feel pretty confident that I can implement dumb and smart HTTP though.
Even if this library can't be used for everything, it will allow a whole lot more use cases that are currently possible.