Ajax Bestiary: A Javascript Field Guide
 
Ajax Bestiary: A Javascript Field Guide
 
 

Entries Tagged as 'Misc Toolkits'

Meet Base2, A Javascript Reset from Dean Edwards

Posted by Don Albrecht

Base2 is exactly what the title says,  Unlike the major libraries that strive to enhance javascript with shiny new features, Base2 strives to achieve a clean, browser independent execution environment.  In many ways base2 does for javascript what Blueprint, Tripoli et al. do for CSS.

Key Features:

  • Inconsistent enumeration across platforms
  • instanceof doesn’t always work
  • typeof is inconsistent (RegExps identify as type “function” in Mozilla browsers)
  • Consistent object/platform detection
  • Other various bugs

And the sugar:

Playing with the library, it really is a breath of fresh air in many respects.  It’s lightweight (20kb compessed & 6kb) gziped and loaded with features that make day to day javascript development faster and easier.  Most importantly, it raises the bar for all browsers by providing Javascript 1.6 features to browsers other than Firefox.

You can get it online at

http://code.google.com/p/base2/ 

and there’s an excellent introduction at

http://dean.edwards.name/weblog/2007/12/base2-intro/ 

Robert Nyman’s DomAssistant 2.5 A Lightweight JS Library Powerful Enough To Take On The Big Boys.

Posted by Don Albrecht

Robert Nyman has announced the release of version 2.5 of his Dom Assistant framework. A light in size (6 kb gziped) but fully featured tool for streamlining Javascript development. He states in his announcement that:

“With this release of DOMAssistant, I feel that it can seriously compete with the major JavaScript libraries on the market.”

Although Mochikit, Prototype, Mootools, jQuery, YUI, Spry et. al. seem to indicate that the market for Open Source JS frameworks is a bit saturated. I’ve found that different projects frequently call for a different toolkit. Sometimes, the rich widgets & CDN’s of frameworks like YUI & Dojo make all the difference in delivery & performance. Sometimes the Dreamweaver & Coldfusion integration of Spry makes it a no brainer. Sometimes you need Mootool’s Flash, jQuery’s progressive enhancement or Prototype’s Ruby on Rails integration & extensibility. Dom Assistant is definitely another toolkit that fits into this ecosystem.

Dom Assitant’s Strengths:

Small Size:

At only 21KB compressed for the entire library, it’s small enough for just about any bandwidth constraint.

Legible Code:

Unlike frameworks that make extensive use of $, $$ or chaining. Dom Assistant based code is highly legible and approachable. Even for someone new to JS development. It does use the $ operator for selector support, but doesn’t encourage the development of long chains.

Rich Features:

Dom Assistant is fully featured toolkit for Ajax, Dom, CSS & Event manipulation.

Great Performance:

Dom Assistant is engineered to avoid memory leaks and run fast.

Drawbacks:

Dom Assistant currently lacks any widget or animation support.

You can find Dom Assistant here:

http://www.robertnyman.com/domassistant/

Read More About Dom Assistant here:

Robert Nyman Blog Post

Meet AppJet, A complete, javascript based web app system.

Posted by Don Albrecht

AppJet is now in beta and it’s pretty awesome.  Combining a server side rhino execution environment, an excellent API and a web based IDE, AppJet lets you build and deploy complex applications using only javascript for both client and server tiers.

Check it out today at: appjet.com

Amazing 3d JS Gallery Widget

Posted by Don Albrecht

Gallery Sequence
Here’s a pretty spectacular JS based image gallery with source.  The entire gallery is a 3d fish eye interface.  It’s incredibly easy to use, visually impressive and toolkit agnostic.  It’s performance isn’t as good as some flash based options & I personally find some of the translucency to be distracting rather than conducive to the design. All in all, this is a great gallery widget for those times you need something more impressive than traditional carousels & lighbox / thickbox implementation  Check it out here: http://www.dhteumeuleu.com/ via webappers 

Google Charts API

Posted by Don Albrecht

Yellow line chartOutsource your charting to Google!  Yesterday I discussed my initial experiences with the Flot charting library.   Today, I’m going to give you a brief introduction to the excellent new Google Charting API.How it works, simply embed an image tag in your source that references the google chart API location followed by a set of parameters specifying the actual chart.  Google then renders the chart as a PNG that can be displayed in the browser.Features:

 

Parameter Line chart Scatter plot Bar chart Venn diagram Pie chart 
Chart title Yes Yes Yes Yes Yes
Chart legend Yes Yes Yes Yes Yes
Colors Yes Yes Yes Yes Yes
Chart and background fill Yes Yes Yes Yes Yes
Multiple axis labels Yes Yes Yes    
Grid lines Yes Yes      
Shape markers Yes Yes      
Horizontal range markers Yes Yes      
Vertical range markers Yes Yes      
Line styles Yes        
Fill area Yes        
Pie chart labels         Yes

Simplify Debugging With Firebug Lite

Posted by Don Albrecht

Firebug Lite in SafariMost of us are familiar with Firebug, the powerful & straightforward debugging extension for firefox.  You may not be familiar with it’s little brother, Firebug lite.

Firebug lite is exactly as it sounds, a light-weight firebug console for any browser.  Simply include the firebug script tag in any page and you’re console.log(); operations will work on any browser (IE, Safari, Firefox & More).  What’s more, if Firebug is installed in Firefox, it logs to the full Firebug console.  You can pull up the console by hitting F12 or CTRL + SHIFT + L at any time.

Don’t want to bother with hitting F12 every time you reload?  Just attach a debug=”true” attribute to the html element (<html debug=”true”> ).

But wait, There’s more.

Firebug Lite has an even littler sibling called Firebugx.  Replace the call to firebug.js with a call to firebugx.js and you neutralize any console calls in your code without having to hunt them down or find / replace.  Something that would have saved me a whole heap of trouble with the last BLT deployment.

Download Firebug Lite at:

http://www.getfirebug.com/lite.html 

FastInit: SuperCharge Your Pageloads

Posted by Don Albrecht

What is it:

FastInit is a small JS file to create a Faster window.onload. It implements a powerful onload function queue that fires once teh dom is ready and before all images have been downloaded. Ideally, this results in a dramatic decrease in a pages initialization time.

How it Works

You any functions to the queue by using the FastInit.addOnLoad( function 1, function 2, …); function. All functions are fired in the order in which they were added to the queue. addOnLoad can be called as many times as is necessary. It fails gracefully to standard handlers if the browser doesn’t support the faster methods.

Requirements

As of version 1.4.1 the need for Prototype has been removed freeing the code for use in any project where a speedy onload method is needed.

Check it out here:

http://tetlaw.id.au/view/javascript/fastinit

Spectacular, Unobtrusive Table Script From Frequency Decoder

Posted by Don Albrecht

Frequency Decoder Table

Following in his tradition of delivering, simple, easy to use widgets for beautiful design driven development, Brian McAllister has released this spectacular table widget.

Here are some of the key features:

Check it out at http://www.frequency-decoder.com/2007/11/15/unobtrusive-table-actions-script

SmartClient is going Open Source

Posted by Don Albrecht

smartclient The SmartClient library is based on databinding & presentation widgets (Similar to Spry).  And is being released as an OpenSource LGPL product. 

The LGPL Version is feature complete for client side development but lacks the presentation server & visual IDE included in the full premium version.

Check it out online  here:

http://www.smartclient.com/product/download.jsp