The time has come to move Cappuccino to Node.js. Why move to Node? There are three main reasons:
1. Cross-platform parity
Narwhal runs fully only on Mac OS X (using jsc), runs with difficulty on Linux, and doesn’t run at all on Windows.
2. Ease of installation and upgrading
The single biggest point of friction for beginning users is the obscure incantations necessary to get Cappuccino installed and running. Updating is more difficult than it should be, with a frequent need to rebuild from scratch.
Using the magic of
npm, the Node Package Manager, our goal is to have the Cappuccino install be like this:
npm install cappuccino --dev
No bootstrap, no compiling. One line and you’re done. Cappuccino will run fully from source, with no compiling necessary (other than themes). This will make updates much easier. Of course when it comes time to deploy, you will be able to create a compressed version.
3. More modularity, better ecosystem
Currently Cappuccino is a very large, monolithic beast. Frequently when we change one small part of it, users have to clobber and rebuild the whole thing. Why should this be so?
We envision Cappuccino being split into modular packages that form a stack: Objective-J, Foundation, AppKit, Tools. Installing packages higher in the stack automatically installs the dependencies lower in the stack.
npm install Cappuccino-Foundation
More importantly, the modularity and ability to make easily installable packages will encourage Cappuccino developers to publish their extensions to Cappuccino. And we don’t have to spend any time creating the infrastructure for finding and installing Cappuccino packages, npmjs.org already serves as a central repository and search engine for Node packages. There is a huge and growing Node ecosystem, and Cappuccino can be part of that.
Bringing parity to all platforms and making it easier to install and use is the single most important thing we can do to ensure wider adoption.
More users means more support from the community, more funds for development, and thus an even better Cappuccino.
This is a big project – we will be rebuilding Cappuccino from the ground up and rewriting many of the tools.
Our fundraising goal: $5000
A few months ago, we received almost half of that, and had to abandon the project at that time. But now we are ready to try again. Let’s make it happen this time!
If you donated before, thank you! Please donate again. If you didn’t donate the first time, now is your chance to contribute to a brighter future for Cappuccino. Any amount, great or small, is more than welcome and greatly appreciated.
You can donate here:
Thank you for using Cappuccino, and thank you for your support!
The Cappuccino Core Team