What is Luc?

Luc is a lightweight JavaScript framework that is built from the ground up targeting all browsers and Node.js. Luc provides a class system that can add compositions, mixins and statics functionality to any class without messing up the inheritance chain. Luc comes with over 40 utility Array/Object/Function methods along with over 150 Array utility methods that follow the same API and grammar. It also comes with the ability to add EventEmiter and Plugin functionality to any pre existing class. Luc has zero dependencies and currently sits at less than 650 SLOC and it is less than 7.5Kb minified and gzipped.

Node

Browser

Supported Browsers

IE8 - latest with tentative support for IE6/7 (Our tests currently pass in them now)

FF3 - latest

Chrome

Opera

Safari 5.1 - latest

Tentative support for mobile (Our tests pass for the platforms that we are testing)

Where does Luc sit now?

Luc is now in its first official release. It still sits at version 0.* and follows the http://semver.org/ versioning spec. We want to get input on what the community thinks about the API and functionality Luc provides. Luc will officially release an unchanging API after taking account for everyone's input. Once input has been gathered a 1.* version will be released.

The future

Right now Luc provides the the building blocks for small and large scale applications. It does not have any dom or html building functionality. We want to add this functionality as a submodule down the road. For the most part Luc's core API should be pretty set now. Any functionality that we want to add down the road will be done through submodules.

Issues/Discussion

Log issues with the appropriate tag. For discussions about the API or documentation use the discussion tag. Please read the known caveats of es5-shim.

FAQ

How does Luc support Node and IE6?

Luc uses es5-shim and browserify to write pure node code with all of its es5 goodness and it just works on all browsers.

Can I run the tests and see code coverage?

Feel free to run the tests in your favorite or least favorite browser. Coverage