2007-02-28

The ECMA – 262 Standard, ratified after Netscape and Microsoft (mostly) agreed to make JavaScript and JScript interoperable.

Ways To Avoid Writing JavaScript

I’ve taken to looking for alternative ways to develop in JavaScript that don’t require me to put up with its syntax and overall insanity. Here’s a few I like (mostly compilers, since that’s what makes the most sense for me):

Category

Date

Link

Notes

Compilers

Jun 5

Opal

A Ruby transpiler

Nov 18th

Elm

A functional language that compiles to JavaScript

wisp

A homoiconic LISP dialect with Clojure syntax and macros

pythonium

A Python 3 to JavaScript translator

Resources:

Most of these are library-independent. Check my jQuery page for more, since there’s an entire sub-culture that believes it to be JavaScript programming in and by its own…

Category

Date

Link

Notes

Tools

Aug’16

nodeenv

A sane way to install multiple versions of Node in segregated environments. Downloads prebuilt binaries on macOS, Linux and Windows.

create-react-app

A bootstrap tool for React apps.

May’12

javascript.tmbundle

An indispensable TextMate add-on (the autocompletion features alone are priceless)

Apr’11

PhantomJS

A complete WebKit web stack, made scriptable via JavaScript. Awesome for testing, rendering pages to raster formats, etc.

UI elements

Aug’15

dragula

a drag and drop library

Jul’15

lazysizes

For lazy image loading

May’14

Framerjs

For designing interactive prototypes

Oct’13

Odometer

A library for counters with smooth transitions

rainbow.js

A slim progress bar

nprogress

Another slim progress bar

Jun’12

Mousetrap

a very nice way to handle keyboard shortcuts

Feb 26’11

Color Wheel

A great color picker component

Sep 17

Roar

Two Growl-like components done with MooTools

Window.Growl 2.0

Timeframe

Amazing calendar widget with support for date range selection.

Data Binding

Sep 18

knockout.sync.js

A very nice Knockout extension that allows you to sync data among clients and backends

Canvas and Graphing

Dec’15

smartcrop.js

Content-aware image cropping

Jan’14

glsl-transition

A library that uses GL shaders for transitions

Oct 20’13

GoJS

A commercial charting and diagramming library

Sep 18’13

svgjs

A lightweight library for SVG handling

May 7’13

Two.js

An intriguing API that supports a number of back-ends (svg, canvas and WebGL)

Feb 17’13

GoJS

An amazing charting library with support for flowcharts, swimlanes, and a number of business process diagrams.

Sep 25’12

Ejecta

A fast GL-backed canvas library for iOS

jsPlumb

A Yahoo pipes-like library.

Jun 25’11

paper.js

Amazing open source vector graphics scripting framework that runs on top of the HTML5 Canvas

Apr 21’10

Akibahara

A wonderful set of small libraries to clone 8-bit era arcade games,

Jan 19’10

Highcharts

A very comprehensive charting library.

Jan 1’10

Raphael

An amazing vector library, with a charting companion that will knock your socks off.

Dec 3’09

Parcycle: A Particle System with HTML5 canvas

Pretty damn amazing.

Nov 6’08

JavaScript Information Visualization Toolkit

A pretty comprehensive set of resources

Dec 16’07

Safari Programming Topics

Firefox 1.1 Canvas Support

Timeline

a draggable DHTML timeline widget

Forms and Input

Oct 27’13

date

A date parser that can take pseudo-natural language strings

Sep 20’13

focus-transition

should be the default everywhere

Feb 1’13

Kalendae

a very impressive, framework-agnostic date picker

Dec 16’07

Auto-Tab

JavaScript Calendar

HTML Tabbed Dialog Widget

XLoadTree

dynamically loading tree control

Text Formatting

Codeblock.js

A nice way to provide code samples.

Feb 1’13

Rainbow

A nice syntax highlighter

Jan 1’10

google-code-prettify

A source code prettifier with support for multiple programming languages.

jsMath: A Method of Including Mathematics in Web Pages

An amazing (re)interpretation of TeX

Oct 21’09

JavaScript Prettifier

Simple to use and effective

Sep 17’09

To Title Case

A port of Gruber’s title case script

Dec 16’07

Showdown

a Markdown port

Highlight.js

two interesting syntax highlighters

Syntax Highlighter

Diff Algorithm

Search Engine Keyword Highlight

yes, I know it’s cheating – but it works fine when you don’t want to hack your back-end.

3D

Mar’12

cannon.js

An amazing physics engine.

Mar’11

adamia-3d

A pure JS library with an interesting math component.

CopperLicht

A full-featured 3D engine.

three.js

Probably the current (best) bet to work with WebGL. (some interesting samples here

Toolkits

Sep’14

js-csp

All the fun of Clojure core.async without the beauty.

Oct’13

Riot.js

An opinionated take on MVP

Oct’13 Minified.js

A tiny replacement for jQuery/Zepto/etc.

May’13

Bookshelf.js

A sane ORM.

Feb’13

PouchDB

A local storage wrapper with the ability to work offline and sync with a remote source.

anima.js

A tiny, but flexible animation library.

uilayer

A very nice abstraction for managing content positioning and animation using layers (and 3D transforms).

Rekapi

A keyframe animation library with tweening.

Aug’11

Underscore

A small but powerful functional programming toolkit.

Mar’11

php.js

Useful for porting across app logic.

Feb 20’11

CoffeeScript

Sanity, restored.

Nov 7’09

Closure

A compiler, library and toolchain by Google.

Dec 16’07

Taffy DB

an interesting “database” library.

Prototype

heavily driven by Rails

Cross-Browser

dojo Toolkit

a UI toolkit for dynamic website implementation

Moo.fx

very lightweight (3KB)

JQuery

it’s everywhere these days.

Server-side

Dec’14

Ducktape

An embeddable JavaScript engine

May 16’10

node.js

An event-oriented framework for doing I/O using Google’s V8 engine.

UI Frameworks

Apr 10’10

UKI

A simple UI kit for complex web apps that was used to do a complete Mail.app mock-up

Nov 7’09

Cappuccino

Utterly amazing, and used by very complex web apps like 280 Slides and Mockingbird

Media

Dec 16’07

Smooth SlideShow Library

OpenLayers

a map navigation UI

Ken Burns Slideshows

iPhoto-like image resizing using Javascript

GreyBox

a Mac OS X like popup.

fadomatic

cross-browser DIV fader

Walter Zorn

vector drawing, graphing, and other amazing stuff

image cross fader

Development

Apr 17’10

Learning Advanced Javascript

An interactive tutorial.

Dec 16’07

Jash: JavaScript Shell

Escaping regular expression characters

JSLint

an interesting lint adaptation for JavaScript

Lumberjack

a set of logging utilities

JSAN

CPAN for JavaScript, of a sort

Mouse Input

Dec 16’07

Drag-and-Drop Sortable Lists

Drag-and-Drop Library

Mouse Wheel Programming

Pie Menus

a nice Pie Menus Menus implementation.

Tables

Dec 16’07

ActiveScripts Grid

an impressive grid control

Sortable Table

Standartista Table Sorting

Sortable and Groupable Table

Ajax related

Dec 16’07

LiveSearch

the stuff I used on this site’s search box for a while

Everything about the XML HTTP Request intrinsic object

that which is now being dubbed Ajax. I wonder how far we are from Tide.

JPSPAN

a server-to- JavaScript bridge using the XML HTTP object and some very clever data conversion.

SAJAX

a similar effort geared towards PHP

Snippets:

Associative Arrays in JavaScript

Show more