Mild-Mannered Canadian Fury

Doug Stephen is Politely Peeved

Pow.cx and Xip.io


Sun, 10 Jun 2012 Ā«permalinkĀ»

Pow, the zero-configuration Rack and static asset server designed for easy local development, has been updated to version 0.4.0 with support for 37signal’s new Xip.io Wildcard DNS Service.

I’ve posted before about my love for pow as a local development server, and the introduction of the xip.io service and its integration with pow is a huge, huge boon for one, simple reason: It makes testing sites on several devices (like iPhones and iPads) brain-dead simple without the need to deploy to an external URL or hack together a custom DNS or proxy solution.

The more immediate benefit of this service is that it allows you to view local content via Adobe Shadow, a frictionless way to preview on multiple devices simultaneously.

The only immediate downside to the xip.io service is the rather clunky URL’s. A pow project that is symlinked at ~/.pow/blog that would normally be viewed at the URL http://blog.dev is accessed via xip.io at http://blog.your.local.ip.address.xip.io. For example, from within my local network, the URL for this blog’s development instance is http://blog.192.168.1.147.xip.io. This is not fun to type. Thankfully, there’s a way to fix that as well.

If you’re on OS X (and since we’re talking about pow, there’s a good chance you are), then you should already be using Smile’s TextExpander. If you aren’t, I’m not sure that we can be friends. TextExpander makes it a breeze to handle stuff like this. I’ve just mapped all of my development projects to TextExpander snippets. Now, when I want to look at the pow instance of this site, I just type blog.xip and TextExpander handles the rest.

Obviously if you’re working outside the realm of Ruby or 100% static web apps, then this stack won’t be of use to you at all. But even for simple static sites, I highly recommend pow for all local development and testing.