InfoQ spoke to Tim to learn more about the project.
Where did the idea for JSGit come from?
After working on Cloud9 for a year, I realized that a browser-based IDE is possible today. The only problem that Cloud9 didn't solve well was the offline story. I wished that I could clone my Git repos locally to my device, work offline while flying overseas (or hanging out in the far end of my backyard), and then when I'm back within reach of internet, pushing my changes back to my public Git repo.
What do you see as use-cases for JSGit, is it just browser-based IDEs and editors or are there more broad applications?
Do you have any sense of what the performance will be like?
I plan to look into this, but from initial research into this area, there are two problems I foresee. First, Emscripten is a code generator. It generates fairly large code-bases and ends up being a direct port unless you manually tweak lots of code. Second, looking at the Git implementations in C they often are tightly coupled with the underlying filesystem and network calls. These would need heavy customization in a browser-based version of Git. I will need hand-written filesystem abstractions for the various web platforms since each has its own API for file storage.
Why do this project now? Is there any particular HTML5 technology that makes this possible today?
It's more about hardware. There are more and more devices that have long battery life and great screens, but crappy development experiences.
Your project got funded in little over a day, what features do you expect to be able to build for the funds you will be receiving?
Like I estimated in my stretch goals, I hope to have the essential Git features implemented and if there is time, some integration with various platforms.
It sounded like a good idea at the time. So far it's working out, though after reading through all the Kickstarter rules, I'm feeling like this kind of project barely fits into their ideal for a project.
I don't know yet, this is an experiment. I do like the idea of screening ideas for support before spending months of time working on them. I've spend hundreds of hours of my free time on past projects only to find out that there is little interest from the community for them. I really like the idea of working full-time on cool projects that people wish existed. I don't know if Kickstarter will work out long term, but I'll keep looking for other ideas if it doesn't.
The project is open to pledges until March 30, 2013. Tim expects to start working on the project soon after the pledge deadline expires.
It has already been done!
Kees de Kooter
Re: It has already been done!