Spreewald 1.2.11 fixes frequent "no alert open" errors on Chrome

Chrome updates can cause frequent no alert open errors in Capybara dialog tests. Spreewald 1.2.11 waits for browser dialogs before confirming them.

Fixing AfterAll TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'

Jasmine describe() throws AfterAll TypeError: Failed to execute 'appendChild' on 'Node' when an object is passed instead of a string.

Fix multiple CKEditor instances using jQuery adapter - fixed since 4.2

jQuery adapter use can break CKEditor form submission, sending original textarea values instead of edited content when multiple instances share the built-in save path.

Why your all.js is empty on staging or production

When you include a non-existing Javascript file, you probably won't notice it during development. But with caching active (on production or staging) Rails will write an empty all.js file without complaining.

Install PhantomJS under Ubuntu

PhantomJS lacks Linux binaries, making manual builds cumbersome; installing it globally with npm provides a simpler way to get the command running on Ubuntu.

A jQuery plugin pattern every jQuery plugin should use

jQuery plugins often need a consistent architecture to stay customizable and extensible. A standard plugin pattern helps avoid rigid, hard-to-maintain implementations.

Install Bower under Ubuntu

Bower can be installed on Ubuntu through npm after Node.js is available.

About PIE – CSS3 PIE: CSS3 decorations for IE

CSS Level 3 brings with it some incredibly powerful styling features. Rounded corners, soft drop shadows, gradient fills, and so on. These are the kinds of elements our designer friends love to use because they make for attractive sites, but are difficult and time-consuming to implement, involving complex sprite images, extra non-semantic markup, large JavaScript libraries, and other lovely hacks.

danialfarid/angular-file-upload

Lightweight Angular JS file upload directive with old-IE support via FileAPI; Rails asset pipeline auto-loading can fail, so manual inclusion may be needed.

AngularJS Performance in Large Applications

Large AngularJS screens slow down when many watchers and bindings trigger digest work; reducing watcher-heavy patterns improves rendering performance.

Open browser console with keyboard shortcut

Keyboard shortcuts open the browser developer console quickly in Chrome and Firefox, saving time when inspecting errors and debugging web pages.

JSONP for Rails

JSON responses can be reused in legacy cross-domain requests by wrapping them in a callback function. rack-contrib provides a JSONP middleware for Rails apps.

WTF Opera Mini?!

Opera Mini leaves many modern front-end features unusable on mobile, especially in markets where it dominates. Practical workarounds help keep sites functional.

Pete Hunt: React - Rethinking Best Practices

React.js shifts UI development toward reusable components and declarative rendering, reducing the complexity of manual DOM updates.

Rails 4 drops support for the :assets group in Gemfile

Rails 4 no longer needs the :assets Gemfile group because production no longer triggers unwanted on-demand asset compilation.

jpillora/xdomain · GitHub

Makes cross-domain XHR work by tunneling communication through an IFRAME on the page, enabling requests that browser same-origin rules would block.

Your First AngularJS App: A Comprehensive Tutorial

Beginner AngularJS development often involves routing and client-server data transfer issues. A hands-on introduction helps build a first working app with core concepts.

The Future of AngularJS

Upcoming AngularJS changes promise a more capable framework with improvements aimed at modern web app development.

angular/angularjs-batarang

Chrome WebInspector extension for debugging AngularJS apps and tracking down performance bottlenecks.

jQuery 1.8 Released

jQuery 1.8 brings internal performance improvements, a faster selector engine, and bug fixes, while later 1.x releases begin dropping support for older IE versions.

Asset pipeline for Rails 2

Rails 2.3 can use the Rails 3.1 asset pipeline through a backport for managing and serving static assets.

Responding to the OPTIONS HTTP method request in Rails: Getting around the Same Origin Policy

Rails applications can answer browser preflight requests and allow controlled cross-origin access by handling OPTIONS requests with CORS headers.

Liquid Canvas

Liquid Canvas is a JavaScript library which allows you to draw inside an HTML canvas element with an easy yet powerful description language.

It can be used to add graphics to your web page without ever touching an image creation tool such as The Gimp, Inkscape or Photoshop.

Check out the Demo and the basic example and then download version 0.3.

Terminus: a client-side Capybara driver

Terminus is a Capybara driver where most of the driver functions are implemented in client-side JavaScript. It lets you script any browser on any machine using the Capybara API, without any browser plugins or extensions.