Descript.org - The JavaScript Foundation
What's new about Descript?
- New 1.1.0 release (June 21, 2012)
- new core methods for DOM manipulation
- ElementObserver class upgrade (new methods)
- Inheritance improvements (native methods override issue and other fixes)
- and more » - New 1.0.3 release (January 19, 2012)
- Inheritance core fixes & improvements
- EventDispatcher implementation improvements
- new FormObserver class introduced.
"Hello World!" coded in Descript
com/example/HelloWorld.js file:
dsc.Class["com.example.HelloWorld"] = {
Extends: "descript.events.EventDispatcher",
Import: "descript.ui.PopupWindow",
popup: null,
HelloWorld: function(){
//initialize itself
this.popup = new descript.ui.PopupWindow("example", 300);
this.popup.setContent("Hello World!");
},
sayHello: function(){
//show message
this.popup.show();
//broadcast event
this.dispatchEvent(new descript.events.Event("hello"));
}
};
What is Descript?
Descript is a lightweight foundation framework for advanced JavaScript applications development. It was created mainly to fill all the gaps in pure JavaScript programming, making it more intuitive and compatible with modern patterns.
The simplicity and clarity makes this project unique...
Main idea of Descript is providing a well-organized and object-oriented approach in the easiest and most legible way. It is obvious that other complex frameworks offer similar features but none of them is designed well enough to be easy to use and clear to understand.
You won't find beautiful widgets, effects and other extras here...
Descript just aims to embellish the source of your app.
Main features
- Fully object-oriented JavaScript code - define and inherit class definitions, override methods but still access their parent's definitions;
- Java-like packages system - define classes in separated files, group them in folders and import like in Java™;
- Seamless integration - just one instead of several script tags in your HTML source;
- Event driven development inspired by W3C DOM events model, extended and applied to wider application area;
- Easy debugging and runtime control with build-in Debug Console tool;
Compatibility
- Cross-browser - tested on following browsers: IE 7+, FireFox 2+, Opera 9+, Safari 3+, Chrome;
- No cross library conflicts thanks to unique namespace for Core features and packages system;
- Untouched native prototypes - doesn't affect any native JavaScript objects' implementation;
And a lot more cool features awaiting for you...
