js in thephotolabs




A brief overview of the (many) JS libs used 

in the construction of ThePhotoLabs.com

What IS ThePhotoLabs?






A web app for HDR photographers.

What IS HDR Photography?





HDR = High Dynamic Range





wat?

A better Question : WHY HDR?





Eyes are fantastic optical instruments.




Cameras are not as good.

And kind of dumb.

You Don't Want This





OR This








WHAT IS HDR?




A method to try to overcome
the suckiness delta between 
cameras, monitors, and printers
vs
the human eye.



http://www.thephotolabs.com/hdr
http://www.thephotolabs.com/hdr_process

Basic Utility Libs


  • JQuery - Cross browser abstraction, DOM selection/manipulation, AJAX
  • JQueryUI - Datepicker, Draggable, Droppable, Effect Fade, Selectable, Slider, Sortable
  • Backbone.js - Client side MVC
    (OK, mostly just MV, not so much C)
  • Underscore.js - Required by Backbone
  • Twitter Bootstrap - Tabs, Modals, Accordions, Drop Downs, Tooltips

Yes, You're Right


That *IS* a lot of 'utility' libraries.

PJAX


https://github.com/defunkt/jquery-pjax

Load only a portion of the content on navigation events.

Not the entire page.

Avoids extra JS/CSS parsing and setup.

Used for gallery navigation (among other things).

http://www.thephotolabs.com/galleries/99

PLUPload

http://www.plupload.com/

Drag & Drop Uploads








http://www.thephotolabs.com/photos/uploader

PUSHEr


http://pusher.com/

Real time push notifications.

Trigger events on the client directly from your server.

JQuery Gritter


http://boedesign.com/blog/2009/07/11/growl-for-jquery-gritter/


Growl type pop up notifications.


Receive events from Pusher and trigger Gritter.

Chosen


http://harvesthq.github.io/chosen/


Awesome select lists

JQuery UI Touch PUnch

http://touchpunch.furf.com/

Punch some touch friendlyness
into JQuery UI.

Backbone Paginator





https://github.com/addyosmani/backbone.paginator





Pagination for Backbone collections.

caman JS


http://camanjs.com/


Image manipulation via <canvas>






http://www.thephotolabs.com/composites/25850/edit

Pixastic

http://www.pixastic.com/


More image manipulation.


Only used to build histograms.


Luckily they provide a customized mini build.


http://www.thephotolabs.com/composites/25850/edit

And Finally


Completely unrelated to anyting....


StarLogs.net


Make your commit history epic!


Thanks For Watching!


Jeremy Green
jeremy@octolabs.com



http://www.octolabs.com/