Classify.js

Classify.js is a library that allows for cross browser and
cross platform Object Oriented Javascript class definitions using classical inheritance
patterns and namespaces behind the prototype syntax of javascript in an easy to use
interface function.

Classify.js was created to simplify the creation of reusable
objects in a manner much like the traditional C based languages. It is a wrapper to
the Javascript prototype syntax of class object creation, instead classes are defined
in object notation much similar to single instance javascript objects.

Classify.js also provides utilities methods that are useful
to javascript classes, such as auto binding methods without adding Function.bind,
observable properties with getters, setters, and event listeners, and namespacing
that can be easily accessed and externalized.

Source

This project is hosted on GitHub.
You can report bugs and suggest new features on the issues page.

A complete Test Suite is available in the repository by running ./make.js unit.