What is CanJS?
CanJS is an evolving and improving set of client side JavaScript architectural libraries that balances innovation and stability.
CanJS includes everything you need to build a modern, well architected JavaScript application:
- Observable objects
- Computed properties
- Live binding templates
- Custom elements
- Service modeling and intelligent data caching
- Routing
The CanJS libraries are divided into four categories:
- The Core Collection - the core, most useful parts of the library.
- The Ecosystem Collection - extensions to the core collection, which may be useful for some applications, like mocked AJAX requests, helpers for importing modules, virtual DOM libraries, and two-way data bindings
- The Infrastructure Collection - Lower-level utilities that power the core collection, generally not things that application developers will use often, like low-level JS and DOM utilities, the core parts of the template and observable systems.
- The Legacy Collection - Supported former libraries that are no longer actively developed, such as previous template engines and observable APIs.
Part of a stack
CanJS is one piece of the larger DoneJS framework, which provides a full stack of tooling for building high performance, real-time web and mobile applications.
CanJS, and each of its libraries, can be used in isolation, and are individually useful, but are even more useful when combined together.
The Team
CanJS is built by 100s of contributors.
Core Team
Prashant Sharma
Prashant is based in Bangalore, India. He likes the understated elegance of CanJS. I also believe DoneJS is a great framework in the making, since it makes technology selection a no brainer by uniquely offering developers an all-in-one technology stack. github
Julian Kern
A 29 old guy from Germany, Julian started coding at the age of 16. Now he freelances with CanJS. He likes the clean structure of Model, Views, and ViewModels.
Mohamed Cherif Bouchelaghem
Mohamed Cherif BOUCHELAGHEM from Algiers, Algeria, almost a server side developer in day work, JavaScript developer after work hours specially using DoneJS/CanJS. He likes to help people to learn and find solutions to issues with DoneJS framework and build applications and code samples that help to show the best from DoneJS/Canjs and learn it faster.
Full-time Team
Kevin Phillips
Kevin is based in Chicago (well, close enough). He wants to make it easy for anyone to get started with DoneJS and will work on features that help solve complex problems.
Justin Meyer
Justin dances and plays basketball in Chicago. He created JavaScriptMVC and manages the DoneJS project, and shouldn’t code on it as much as he does.
David Luecke
David is a Canadian by way of Germany. His focus is on CanJS and DoneJS’s testing stack.
Matthew Phillips
Matthew, keeper of beards, is the lead maintainer of StealJS and its related tools.
To become a contributor to DoneJS or its sub-projects, you simply have to:
- Email the core team expressing your interest.
- Attend the weekly DoneJS Contributors meeting twice a month. Meeting Calendar
- Make one small contribution, even a spelling correction, per month.