foresight.js – Handle High Resolution Images

Foresight.js gives webpages the ability to tell if the user’s device is capable of viewing high-resolution images (such as the 3rd generation iPad) before the image is requested from the server. Additionally, it judges if the user’s device currently has a fast enough network connection for high-resolution images. Depending on device display and network connectivity, foresight.js will request the appropriate image for the webpage

  • Request hi-res images according to device pixel ratio
  • Estimates network connection speed prior to requesting an image
  • Does not use device detection through user-agents
  • Does not make multiple requests for the same image
  • Javascript library and framework independent (ie: jQuery not required)
  • Cross-browser and cross-platform
  • Image dimensions set by percents will scale to the parent element’s available width and device pixel ratio
  • Fully customizable through global configuration options and individual img attributes
  • Default images will load without javascript enabled
  • Minifies down to roughly 5K


Keymaster – Javascript Library for defining and dispatching keyboard shortcuts

Keymaster is a simple micro-library for defining and dispatching keyboard shortcuts. It has no dependencies. Keymaster has no dependencies and can be used completely standalone. It should not interfere with any JavaScript libraries or frameworks.

Keymaster understands the following modifiers:
, shift, option, , alt, ctrl, control, command, and .

The following special keys can be used for shortcuts:
backspace, tab, clear, enter, return, esc, escape, space,
up, down, left, right, home, end, pageup, pagedown, del, delete
and f1 through f19.

When an INPUT, SELECT or TEXTAREA element is focused, Keymaster doesn’t process shortcuts.

Keymaster should work with any browser that fires keyup and keydown events, and is tested with IE (6+), Safari, Firefox and Chrome.

See for a live demo. (Look at your firebug console)

Javascript File Upload Widget – jQuery File Upload

File Upload widget with multiple file selection, drag&drop support, progress bars and preview images for jQuery.

Supports cross-domain, chunked and resumable file uploads and client-side image resizing.
Works with any server-side platform (PHP, Python, Ruby on Rails, Java, Node.js, Go etc.) that supports standard HTML form file uploads.

jQuery File Upload.

normalize.css – HTML5 equivalent of the traditional reset css

Normalize.css is a small CSS file that provides better cross-browser consistency in the default styling of HTML elements. It’s a modern, HTML5-ready, alternative to the traditional CSS reset.

The aims of normalize.css are as follows:

  • Preserve useful browser defaults rather than erasing them.
  • Normalize styles for a wide range of HTML elements.
  • Correct bugs and common browser inconsistencies.
  • Improve usability with subtle improvements.
  • Explain the code using comments and detailed documentation.

Mobilize.js – A HTML5 and Javascript framework to transform websites to mobile sites

Mobilize.js allows web developers create mobile sites out of existing websites with little effort.

  • Automatically detect mobile browsers
  • Easy to integrate – no server side changes needed
  • Open source – no expensive software or licenses needed
  • Familiar HTML5, Javascript and JQuery Mobile tools used
  • Supports iPhone, Android, Blackberry, Opera Mini and many other browsers and devices

They also have a wordpress plugin. Wonder if its a light weight alternative to WPTouch?

via Mobilize.js.

script.js – Async JavaScript loader and dependency manager

$script.js is an asynchronous JavaScript loader and dependency manager with an astonishingly impressive lightweight footprint. Like many other script loaders, $script.js allows you to load script resources on-demand from any URL and not block other resources from loading (like CSS and images). Furthermore, it’s unique interface allows developers to work easily with even the most complicated dependencies, which can often be the case for large, complex web applications.