Bali Web Design Studio is a small enthusiast web design studio based in Bali, Jakarta, Indonesia.

JSloader ondemand library new way of organizing javascript library

Javascript Library

Jsloader was developed by Dov Katz, Imran Ahmad and Aaron Satlow as part of a hosted Enterprise AJAX solution, but what the hell is jsloader? is it just like other hundreds javascript library? well the developer themselves explained what actually jsloader “the on demand javascript library” is.

JSLoader is a dead-simple, non-intrusive “Javascript-on-demand” packaging convention which helps developers and the internet community rapidly develop and prototype applications without the headache of figuring out the witches’ brew of files that need to be copied, included, etc.

It is more about re-organizing AJAX libraries in a consistent and predictable manner, so we can load the library programmaticaly

What the benefit in using it?

  • First of all, it’s a zero-install solution. The goal is to eventually deploy this style of loading and file organization on a “hosted toolkit” system and allow websites to leverage the distribution of new toolkits without having to figure out how to install them.
  • Second, because multiple sites will share this code the browser and proxy caches will help make things more efficent
  • Finally, the maintainability of toolkits is minimized as content needs to be distributed only once, instead of having each user download a private copy

it is also provide a forum for developer as the place to disscuss it. the sample of usage like the code snippets below, load some ajax library using jsloader

// Dojo Toolkit
JSLoader.load("ria","dojo","0.4.3");
JSLoader.load("ria","dojo","0.9.0");
JSLoader.getLoader("ria","dojo","0.9.0").load("dojo");  // equiv to above
JSLoader.getLoader("ria","dojo","0.9.0").load("dijit");
JSLoader.load("ria","dojo","1.0.0beta");
JSLoader.getLoader("ria","dojo","1.0.0beta").load("dojo");  // equiv to above
JSLoader.getLoader("ria","dojo","1.0.0beta").load("dijit");


// Ext.js
JSLoader.load("ria","ext","1.1.1");
JSLoader.load("ria","ext","2.0-beta1");

// FCKEditor (this will only work on a LOCAL version (you can't source this file remotely)
JSLoader.load("ria","fckeditor","2.5");

// JQuery (no plugins yet...)
JSLoader.load("ria","jquery","1.2.1");

// Lightbox (for prototype/scriptaculous)
JSLoader.load("ria","lightbox","2.03");

// MochiKit
JSLoader.load("ria","mochikit","1.3.1");

// PlotKit
JSLoader.load("ria","plotkit","0.9.1");
// or load individually
JSLoader.getLoader("ria","plotkit","0.9.1").loadAll(
    ["Base", "Canvas","EasyPlot","excanvas", "Layout","PlotKit", "SVG", "SweetCanvas", "SweetSVG"]
);

//Google Prettify
JSLoader.load("ria","prettify","1.0");

// Prototype.js
JSLoader.load("ria","prototype","1.5.1");
JSLoader.load("ria","prototype","1.6.0-rc0");

// Scriptaculous
JSLoader.load("ria","scriptaculous","1.7.1-beta3");
JSLoader.load("ria","scriptaculous","1.8.0-pre1");

// TinyMCE
JSLoader.load("ria","tinymce","2.1.2");

// YahooUI (YUILoader Only, then use the YUILoader)
JSLoader.load("ria","yui","2.3.1");

several demo can be found here including using FCKeditor with jsloader (i love FCKeditor i always use it in my web form projects)

Leave a Reply

bali web design studio Freelance Web Developer Works Bali Web Design Portfolio Get Web Design Quotation RSS Feeds