Sometimes I find myself in a situation where I want to share a file really quickly. I mean like within seconds. I recently found myself wishing I had a tool that could upload a file to a public server and hand me back a URL to share over email or IM. I didn’t know of any that met my requirements so I made one. It’s called Sploder and it’s an S3 uploader. Since I’ve committed to learning Ruby I made it as a Rubygem. Read on to learn more about how to get it, how it works, and why I made it.
Why would anyone need this?
Sploder came about while writing a blog post recently. I wanted to share an image of some statistics related to browser version usage and host the file on S3 as I do with most images and files linked to from my blog. Up until this point getting my files on S3 has been a chore. I either have to connect with an FTP program or use Amazon’s web interface. Both of those take way too long and are way too much of a hassle just to get a file online. So I wrote a Ruby script to do it for me! It was awesome except I didn’t want to load a Ruby script in my path. I’d rather have something like a Rubygem. Creating a gem seemed out of reach for my skill level so I perished the thought. A few days later I was in a situation where I wanted to send a link to a file to someone really quickly. What were my options? My Ruby script, the web interface, or FTP app again. Still not idea. So I took my script, chopped it up, and started creating Sploder.
You’d be amazed at how few good CLI apps exist to upload files to S3. Most of them have way too many options, cost money, are closed source, and just lack a quick and easy way to do a small set of common operations on S3 buckets. Sploder is all about simplicity and speed. It’s for those situations where you want to see what files are in your buckets, what buckets you have, or getting a file online and link back to it. Sploder does all of that.
What does it do?
It uploads files! Tell it what bucket to use and where your file is and Sploder will upload it and hand you a link you can use to share it. You can also specify a path within S3 to upload it to as well as an ACL policy.
It lists your available buckets with the
It creates new buckets when you tell it to
--create -n newbucketname
It’ll delete buckets when you tell it to
And how does it connect to your S3 account? Well, just run
--setup and the handy wizard will ask you for your AWS credentials and store them so you don’t have to enter them again. Changed your AWS access key and secret? No problem, just run setup again! Here’s a handy animated gif of the setup wizard I uploaded to S3 using Sploder:
Get it, Git it, Install it, Use it
Sploder is open source and you can find it in 3 places online:
*The official site – which also has nice documentation
*From Rubygems! (When it comes back online after their recent trouble). Just run
gem install sploder