Pre-Loader SVG

20/08/2013 | Vincent Ritter

The birth of a simple browser-based zip tool

One of my tasks as web technician is to migrate sites from our older hosting infrastructure which is approaching retirement to our newer server farm.

Another one of those tasks is to create websites and upload them, as a developer would normally do.

We develop locally, never on production servers.

Once finished we upload those 'completed' sites in a zip file via FTP. This is followed by a painful logging into RDC (Remote Desktop Connection), wasting 5 minutes to unzip the files and putting it into the correct location on the server... Click, drag, copy, meh!

We have the functionality to do everything else remotely, including setting up the databases and bindings. Nice.

Some of us like working at home. When we need to download something from the server, the catch is that we're locked out as access to our servers is strictly controlled and limited by IP address to protect our clients' assets. So the creative moment can be ruined by a necessary IP restriction. 

So, a new functional requirement came about and the team came up with a simple solution. Why not have a web app where you can upload your site in a zip file and then 'unzip' that into any directory that is on your server, without ever having to RDC into the server? Plus download a zipped version of whatever file you require, be it a directory or a plain text file. All in your browser.

As I was building it, I was invited to give it a name. Being German, and having a German sense of humour, I naturally called it "UnzipMe".

What it does is exactly what we require. Upload zip file, unzip into directory. Download directory/file in a zip format. No RDC involved, ever. BOOM!

Unzip Me Shot

Some advanced featured are also built in, but that is for another post.

I wrote it from scratch using ASP.NET MVC, a couple of late nights and loud music.

I am fortunate enough to have quality time in working hours for learning. But I have to confess that I'm most creative during the late hours of 21:00 - 03:00.

What better way to learn to code than actually getting stuck in and just doing it?

In a series of blog posts I'll explain how I went about building 'UnzipMe', from step 1 all the way to the finish, for those that are interested.

We have begun internal testing for the next couple of weeks, waiting for feedback from the team. So far so good.

Once we're happy we will open source it for the whole world to use.