cJS ist ein kleines MVC-Framework (die Controller können auch require.js-Module sein). Es ermöglicht ein rudimentäres Bindung von Values, Events und Elementen an Attribute und Methoden des Controllers. Das Data-Bindung synchronisiert nicht sofort, sondern erwartet den Aufruf von .cjsPushBindings() und .cjsPullBindings(). Diese Methoden werden über Injections mit in die Controller-Klasse bei deren Instanzierung eingefügt. Im Vergleich zu AngularJS mit den automatischen Bindungs und seiner Template-Engine ist cJS sehr viel näher an nativen HTML und seinen Events dran. Was gerade bei kleinen Anwendungen für kleine Smartphones (z.B. Firefox OS Devices) von Vorteil sein kann. Das Framework bringt auch Methoden zum Zugriff auf REST-Services und die indexeddb mit. Am Ende bin ich für größere Anwendungen auf AngularJS umgestiegen, habe aber einige der hier entworfenen Bindung-Methoden in Direktiven umgewandelt und benutze diese nun mit AngularJS. Aber gerade die Web-Apps im Firefox Marketplace setzen momentan noch auf cJS und da es sehr gut funktioniert werde ich in dem Bereich auch bei meinem kleinen Framework bleiben.
[Download] cJS Versionen (mit Beispielen).