Introducing Surge

The CDN for Front-End Developers

Brock Whitten
surge sh


Have you ever wondered how to deploy a web project and get things like clean urls, graceful trailing slash handling, fallback 404 pages, or serve a catch-all file for apps using PushState?

Surge does all that while handling details such as setting long–live cache headers and setting proper HTTP status codes across a content delivery network.

Installation of surge is easy using node & npm

npm install -g surge

We’ve come a long way

Tools such as Grunt, Gulp, Browserify, and, npm have completely changed the landscape for front-end development. Sophisticated workflows now revolve around these and other similar tools. It only stands to reason that we have a deployment solution that complements these workflows. That’s exactly what surge aims to do.

Surge is designed to stay out of your way and plays nice with all your favourite tools.

Existing Solutions

Existing publishing solutions such as Github Pages and Amazon S3 were developed prior to the recent changes in client-side web development practices and thus didn’t have front-end developers in mind when they were built. These services leave a lot to be desired when it comes to deploying static web projects.

Enter Surge

Surge has been built from the ground up for native web application publishing and is committed to being the best way for Front-End Developers to put HTML5 applications into production. With surge you effortlessly get things like…

  • Custom 404.html files.
  • Catch-all 200.html files (for PushState apps).
  • SSL.
  • Indifferent (intelligently) about trailing slashes (“/”).
  • Clean URLs (indifferent about trailing .html).
  • Far-future expire headers.
  • Easy collaboration built right in.

Ship something now!

Surge is a CLI to deploy any directory to the web with just one command. Simply type surge from the root of your project. Or if your compiled assets are in another directory just pass it in (eg. surge www will deploy the www directory).

To get started with surge is easy. Just install using npm and then run surge within any directory you wish to publish onto the web.

  1. install the latest version of NodeJS
  2. install using npm by running npm install -g surge
  3. run surge from within any directory to publish that directory onto the web.

That’s it! Account creation will happen on first run and you may deploy as frequently as you like.

Try surge now!

There is no risk with trying Surge. It’s free, supports custom domains, and SSL and is full of other details that will make your life as a front-end developer substantially easier. Install surge and start impressing your friends and colleagues. Hope you like it as much as we enjoyed building it. Install it today. Seriously.

npm install --global surge

How much does it cost? The plan is that everything that surge does today will remain to be free. Mainly, that is unlimited applications with custom domains. Oh, and you will always own your content (I hate that I need to say that).


Have feedback? Let us know on twitter: @sintaxi, @rob_ellis, @kennethormandy.

Get started at

npm install --global surge



Brock Whitten
surge sh

Co-creator of Surge, Harp, and Cordova/PhoneGap. Mozilla-WebFWD Alumni and advocate of a free and open web. A friend of the community.