It is very usual that a website presenting a list of images which is "longer in size than the viewport of our monitors" & we simply need to scroll to view the rest. In such cases, in order to make the websites load much faster, we can use lazy loading.

What is lazy loading?
It is a design pattern that means; not-loading a content until it is needed. Basically, it is the opposite of "preloading".
The technique is mostly used in websites that have a long list of images & rather than loading all the images at once, we see them load when we try to view them by scrolling down.
How the logic works?
Using JavaScript, it is possible to detect the following:
- the coordinates of the part of the page (x-y) we’re viewing
- the coordinates of a specific element
- the width-height of the viewport
Having these inputs, we can easily understand if a given element is in the viewport or not. And, after it becomes "in", we can make a JavaScript call to load the content.
Here are ready-to-use resources for implementing lazy loading:
Read the rest of this entry »
MilkChart is an easy-to-use yet robust MooTools library for converting tables into charts.
It uses the <canvas> tag and supports the following chart types:
- Column
- Bar
- Line
- Scatter
- Pie

The library has a bunch of options to customize variables like:
- widths, heights
- font, font size, font color
- chart line colors & weights
- showing row names (on/off)
- & more..
MilkChart does not come with a demo page that you can play with but it is well-documented & a detailed info to start with can be found here.
Requirements: MooTools
Compatibility: All MAjor Browsers Except IE (can be used with ExCanvas)
HydraFramework is a prescriptive development framework for quickly building Flex applications at every level.
The framework’s development methodology can be totally adopted or the core classes can be used in any way you see fit in projects.

It consists several projects:
- HydraFramework Core – an implementation of MVC (otherwise known as HydraMVC)
- HydraPlugins – for quickly adding prebuilt functionality into the core
- HydraComponents – a library of components built on the HydraFramework.
The framework is well documented & presents a demo.
Tutorialzine is sharing a nice tutorial with source on creating a fancy Ajaxed contact form that is built with jQuery & PHP.
The form is unobtrusive & has a server-side validation which makes it degrade gracefully when the JavaScript is turned off.

It takes advantage of 2 jQuery plugins:
and a PHP class:
The contact form also has a basic captcha which works by asking the sum of 2 random numbers.
To check a demo of the form, click here.
Requirements: PHP
Compatibility: All Major Browsers
Piwik is an open source website analytics application which provides detailed statistics about visitors, keywords, pages & more in real-time.
It can be installed on an any PHP-MySQL compatible webserver & the rest works similar to Google Analytics; inserting the tracking codes into the websites we want to track.

One installation of Piwik can track unlimited number of websites which is great for web design companies who would prefer to offer a branded/customized solution to their customers.
Also, the user interface is fully customizable: you can drag and drop the widgets you want to display and create a report especially tailored to you.
The application is built around plugins which means it is possible to add/remove features easily.
Its open API makes integrations with 3rd party software possible. And, here are 2 desktop applications that use this API to bring Piwik to your desktop:
Read the rest of this entry »
Requirements: PHP 5.13+, MySQL 4.1+
Compatibility: All Major Browsers
JCPlayer is a free Flash video player component for displaying/streaming FLV files easily.
It works both with Flash CS3 & CS4 or as a widget object directly in HTML without Flash.
The player has fullscreen option & can be customized completely (includes ready-to-use skins).

P.S. JCPlayer is free to be used in personal websites & requires a license for commercial ones.
Requirements: Flash CS3 or CS4 for using in Flash
In some cases the standard HTML list box doesn’t offer a good usability like the need of scrolling or using both the keyboard & mouse.
MTMultiselect is a paginated & filterable multi-select widget built with MooTools.

The user can easily see the selected/non-selected items & can get all the functionality with only using the mouse.
The widget can be styled completely with CSS.
For a demo, click here.
Requirements: MooTools
Compatibility: All Major Browsers
jQuery (mb)Gallery is a jQuery plugin for creating image galleries with a slideshow feature.
It is possible to present the galleries in any way wanted & adding a link to display them in the main gallery viewer.

The plugin has an inline thumbnail browser which is great to easily switch between images.
It offers multiple parameters for an easy customization like:
- width, height & colors
- auto-starting from a pre-defined image
- auto-sliding to be on/off
- timings between each slides
- & more..
Tip: The author of the plugin, Matteo Bicocchi, has other jQuery plugins which are presented in his ideas repository.
Requirements: jQuery
Compatibility: All Major Browsers
Mysql Ajax Table Editor is an open source web application for easily editing MySQL tables & creating admin pages almost instantly.
Besides the standard "add, edit, copy, delete, view" functionality, records can be paged, searched & exported to CSV.

It is possible to JOIN multiple tables to generate a custom view (+ apply any other functions on this view) with the help of a configuration file. Also, column names displayed can be customized for a better presentation.
MySQL Ajax Table Editor has permissions support which can be set on a per column or table basis for limiting functions.
Users can hide/show & re-order columns which is very useful when working with the data.
The application works with both PHP4 & PHP5 and comes with 5 ready-to-use languages where new ones can be created.
Requirements: PHP4 or PHP5
Compatibility: All Major Browsers
jQuery UI Multiselect is a widget that converts html multiple select inputs into slicker interfaces.
It makes searching within the options possible which is very functional for large lists & selected items can be re-ordered by drag’n drops.

It can display the number of selected items & for an easier selection, there are select all/deselect all links provided.
The widget is unobtrusive & and be styled with ThemeRoller.
Requirements: jQuery 1.3+, jQuery UI 1.7+
Compatibility: All Major Browsers