If you're already famaliar with JS-Git, feel free to skip down to "Why a Second FundRaiser".
Git is an amazing tool for sharing code and data in a distributed manner. Adding this to everyone's tool-chain will enable many great tools and products.
My goal is to target every platform that has enough primitives to make sense. This includes:
I don't intent to make a 100% clone of all the features of the official git program. That would be insane and require a lot more money than I'm asking for. My main goal is to enable the 90% case of interesting stuff:
Some example products that would be enabled by this are:
My main driving force is to build a programming environment to teach kids to program. It needs to run on the devices that the kids already have. There are a lot of youth who have access to tablets or Chromebooks, but have no way to program properly on them. I want to change this and give them the tools to eventually become professional programmers.
I've been working on js-git for almost two months. I'm just now starting to make real progress on the feature sets.
I had spent the first few weeks analyzing the work that Chris Dickinson had already done. I designed a stream system that's both lightweight and works great in both node.js and browser environments. I spent a day creating a module loader for chrome apps so I could use common.js style modules. There were debates about how the project should be organized. Not to mention it's conference season and I've been traveling a bit.
All of this took a lot of time and caused me to have a slower start than I anticipated.
I am however, very optimistic about this next round of work. Things are moving very fast and I have a much better idea how I want to do things. In the last week alone I've created a node.js CLI tool complete with full cloning of any branch.
I'm confident that given a second round of time, some amazing things will be finished and we'll finally have this amazing tool.
One sample application that I'm using to test my code is known as js-git-app.
This app is still in the early stages, It's available in the Chrome app store to test on any device that has Chrome installed.
Another sample usage is js-git-node.
This is a CLI tool that can replace a subset of the git command-line tool. This is useful on platforms that have node.js, but it's still hard to install git. (windows, crosh shell, etc...)
JS-Git is just now starting to make real progress and I don't want to kill it in it's prime. I have mouths to feed and want to continue the project. Also I've been told by many individuals and companies that they would love to support me but need an outlet to focus on. With this second round of fundraising I should be able to get js-git completed to a usable state where it can be used on real products.
js-git to exist. I've wanted this for years, but never found time to do it because I had a day job and family to take care of.
By backing this project, you're funding my time and allowing me to work full time to make this a reality.
The more money this campaign raises, the longer I can work full-time on js-git implementing your favorite features and polishing the library till you can see your face in it.
Putting js-git on kickstarter was very exciting and nerve-racking. I didn't know what to do and open-source projects seemed like a new thing to do on kickstarter.
My first mistake was setting the minimum too low. I carefully calculated how much money I would need as a minimum to work full-time on js-git for a month. I factored in amazon and kickstarter fees, self-employment taxes, backer rewards, time to manage the kickstarter, etc.
After all that calculating I figured I needed at-least $12,000 to make this worth my time at all. So I set that as my absolute minimum.
Then something interesting happened. I reached the minimum in just over 24 hours!
But as soon as the minimum was reached, people interpreted that to mean I could build the entire library in a single month and didn't need any more funding.
I explained the situation and even added stretch goals, but never hit them.
Me second mistake was making the campaign too short. I wanted to start now because I was so excited to create js-git. I set the campaign length to just two weeks. What I failed to realize is that it was over before many people had a chance to back me. The only company that was able to back was Mozilla because they have more freedom in this kind of thing. Others said they would have backed me had there been more time.
Backer rewards are nice and really work for fundraisers for physical products. But this is an open source project. Everyone gets a copy of the final product for free with a liberal MIT style license. It took over a full week and a significant portion of the money to fulfill the backer rewards.
This time, the rewards will be much simpler so I can focus my time on finishing js-git. Also Bountysource will handle all stickers and t-shirts for me so I can focus on what I do best, coding.
Please help me make js-git a reality so we can then make some awesome tools!