lib | ||
public/css | ||
views | ||
.gitignore | ||
config.ru | ||
Gemfile | ||
Gemfile.lock | ||
main.rb | ||
README.markdown |
Shorten
Shorten is an extremely simple Sinatra based URL shortener. There is almost no UI and only the most basic of functionality.
You can see an example of this service running at ➼.ws.
File uploading with an Amazon S3 backend has been recently uploaded and works but is known to be very buggy. YMMV.
Installation
Clone
$ git clone git://github.com/amdavidson/shorten.git
Install required gems
$ gem install rack sinatra sequel anybase pg
Optional: Install the Heroku gem if you want to deploy on Heroku.
$ gem install heroku
Deploy
In the application directory run the following commands
$ heroku create
Configure the application per below.
$ git push heroku master
Configure
Open main.rb
in your favorite editor and change this block:
Shorten = OpenStruct.new(
:base_url => "http://xn--8gi.ws/",
:service_name => "➼.ws",
:button_text => "➼",
:path_size => 4
)
Enjoy
You now have your own running URL shortener. Now use domai.nr or name.com to find
yourself an available, short URL and reconfigure main.rb
History
This is a fork of the original Shorten application created by Andrew Pilsch. I made some updates to randomize the shortened URL in the style of bit.ly and tr.im. I have also modified the software to be easy to deploy to Heroku.