If you’re reading this, you’ve already taken the first step: you’ve met CanJS! Maybe you heard about it at a meetup, or read about it on a blog, but before you spend any time with it, you want to know “who is CanJS?”
CanJS is part of the DoneJS family of open source projects. The DoneJS Team and Bitovi are responsible for CanJS. They steer its direction, add features, fix bugs, and help you become successful. Feel free to say hello anytime on Gitter chat or the forums.
CanJS’s goals are briefly summarized in its mission statement:
Read more about our mission and how we’ve been accomplishing those goals for 10 years.
If CanJS’s heart isn’t enough to convince you it’s a good fit, read up on its Technical Highlights.
So now you’ve decided to give CanJS a try. The best place to start is the Chat Guide. It’s only an hour and shows off CanJS’s best features while you build a real-time chat application. You build the whole thing in a JS Bin.
Next, you’ll want to try the TodoMVC Guide. This takes about 1.5 hours and touches on every core part of CanJS. You can also follow the whole guide in a JS Bin.
After that, check out the ATM Guide. It takes about 2 hours and shows how to build and test an ATM. It also shows how to composite state. The whole guide is done in a JS Bin.
You might also want to to go through DoneJS’s Place My Order Guide. This is an in-depth look at how CanJS works within the context of a wide variety of other tools. This guide takes about 8 hours.
Finally, when you’re just about to commit, read Setting up CanJS to learn how to set up CanJS for your particular environment.
Once you’ve committed to CanJS, it’s important that you keep liking it and get better at using it.
CanJS’s community has lots of people who can offer advice and tips on how to build an application the right way. Instead of struggling, please ask for advice on Gitter chat or the forums. Share a screenshot of what you’re building and we’ll tell you what needs to be done.
To stay up on CanJS’s latest news, we suggest:
To get hands-on instruction, sign up for a DoneJS meetup in your area:
- Ft. Lauderdale
- Los Angeles
- New York
- San Francisco
- Silicon Valley
If you’ve already committed to CanJS and are looking to move to 3.0, read Migrating to CanJS 3.
Once you’ve settled down with CanJS, it’s time to think about adding extensions and improvements to the framework of your own. There are many ways to contribute to CanJS, including:
- Report a bug
- Suggest a feature
- Code changes
- Documentation improvements
- Create a plugin
- Evangelism - Blog, meetup and conference talks
- Releases - Maintaining CanJS
CanJS is managed by the DoneJS Contributors Team. All contributions from all types of contributors are welcome. Contributing to an Open Source project can be an intimidating experience. We’re committed to making the experience as pleasant and rewarding as possible. We’re happy to set up a pairing session to show you how to fix a bug or write a feature.
If you have any questions, you can always reach us on Gitter chat.
If you want to become a CanJS contributor, you simply have to:
- Email the core team expressing your interest.
- Attend the weekly DoneJS Contributors meeting twice a month. DoneJS Calendar.
- Make one small contribution, even a spelling correction, a month.
Issues that should be easy for a new contribitor to pick up have an “easy” label. This GitHub search makes it easy to find easy issues across all the CanJS repositories.