DailyJS

Ender Roundup: Ender, Qwery, Sel, Reqwest, Ender Twitter Bootstrap, CalEnder

Rod Vagg

Subscribe

@dailyjs

Facebook

Google+

frameworks libraries ajax modules jsonp ender

Ender Roundup: Ender, Qwery, Sel, Reqwest, Ender Twitter Bootstrap, CalEnder

Posted by Rod Vagg on .
Featured

frameworks libraries ajax modules jsonp ender

Ender Roundup: Ender, Qwery, Sel, Reqwest, Ender Twitter Bootstrap, CalEnder

Posted by Rod Vagg on .
Welcome to the first [Ender](http://ender.no.de/) roundup! With more developers releasing Ender-compatible projects I thought it would be good to keep everyone updated with what's available for your Ender builds. You can send your Ender-related projects and articles in for review through our [contact form](/contact.html) or [@dailyjs](http://twitter.com/dailyjs).

Ender

The core Ender build tool has been
updated to version 0.8 for the release of Node 0.6. A minor change was
required to properly support the new version of Node; anyone using Node
0.6 should upgrade Ender with npm update ender -g.

Qwery

Qwery (NPM / Ender: qwery), by Dustin Diaz, is Ender's default selector engine, it's small and very fast and you get it if you build with The
Jeesh
, Ender's official starter-pack.

Qwery has seen a flurry of activity recently, culminating in a bump to
version 3.1. Qwery now has much improved support for older browsers and
is better able to handle queries on detached fragments, queries across
frames and other quirky features normally found in the likes of
Sizzle while remaining super quick and small.

Qwery has no external dependencies and can be used as a stand-alone tool
as well as Ender's selector engine.

Sel

Sel (NPM / Ender: sel), by Andrew McCollum, is an alternative selector engine for Qwery. Beautifully written in CoffeeScript, Sel aims
to be fast, small and clean. Some fixes for IE8 bring Sel up to version
0.5.4.

Sel has a single dependency, Andrew's
ES5-Basic (NPM / Ender: es5-basic), a shim to make older browsers more ECMAScript 5
compatible. It can be used as a stand-alone tool as well as Ender's
selector engine.

Reqwest

Reqwest (NPM / Ender: reqwest), by Dustin Diaz, is the module
most Ender users include for AJAX functionality.

The recent release of version 0.3.3 brings improved JSONP support and
largely rewritten serialization functionality, including a new
.toQueryString() method.

Forms, groups or individual elements can be serialized in a few
different ways:

$(form).serialize()
// returns query string -> x=y&...
$(form).serialize({type:'map'})
// returns an object representation -> { x: y, ... }
$(form).serialize({type:'array'})
// returns array name/value pairs -> [ { name: x, value: y}, ... ]
$(form).serializeArray()
// for backward compatibility
$.toQueryString({
    foo: 'bar'
  , baz: 'thunk'
})
// returns query string -> foo=bar&baz=thunk

Leading to more interesting uses:

$('#myform input[name=myradios]').serialize({type:'map'})['myradios']
// get the selected value
$('input[type=text],#specialthing').serialize()
// turn any arbitrary set of form elements into a query string

Reqwest has no external dependencies and can be used as a stand-alone
tool as well as within an Ender build (giving you \$.ajax()
and the serialization methods).

Ender Twitter Bootstrap

Ender Twitter Bootstrap (NPM / Ender: ender-twitter-bootstrap) is a newly released, unofficial
port of the JavaScript components from Twitter's wildly popular
Bootstrap (currently the third most watched project on GitHub).

The Ender port aims to provide support for Bootstrap without the need to
compile jQuery in your Ender build. A jQuery-free live copy of the
Bootstrap JavaScript page
(original, jQuery version here) demonstrates
Modals, Dropdown, ScrollSpy, Buttons, Tabs, Twipsy, Popover and Alerts.

Ender Twitter Bootstrap depends on The
Jeesh

(Qwery, Bonzo, Bean, domReady) plus Bowser.

CalEnder

CalEnder (NPM / Ender: calender) is a basic, themeable calendar datepicker for Ender.
After surveying the vast JavaScript datepicker landscape, Dustin
Diaz
decided that yet another one was required,
but this time, just for Ender.

CalEnder depends on The Jeesh
(Qwery, Bonzo, Bean, domReady).