Skip to content

steveprice67/shortly

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Shortly

A Ruby wrapper for various url shortener services

Installation

create a dependency in your Gemfile
gem 'shortly' then run
bundle install
and shortly will be up and running. or gem install shortly

Uses

Currently Shortly supports three services (Bit.ly, Goo.gl, is.gd, tinyurl) Please do cross check by running Shortly.active_services. All supported methods have been provided for all services, so you can expect at least one method(shorten) will be available for every service.

Bit.ly

bitly = Shortly::Clients::Bitly bitly.shorten('http://justatest.com', {:apiKey => 'R_your_api_key', :login => 'your_login'})

Optionally you can set apiKey and login beforehand (it would be more DRY i think if you only gonna use bitly services).

bitly = Shortly::Clients::Bitly
bitly.apiKey = 'your_api_key'
bitly.login = 'your_login'
bitly.shorten('http://justatest.com').url
bitly.expand('http://bit.ly/imshort').long_url

Goo.gl

googl = Shortly::Clients::Googl
googl.shorten('http://justatest.com').shortUrl
googl.expand('http://goo.gl/shrt').longUrl
googl.analytics('http://goo.gl/shrt').analytics

Lggd (Credit ‘Steve Price (steveprice67)’. See Credits section)

lggd = Shortly::Clients::Lggd
lggd.apiKey = '<api-key>'
lggd.shorten('http://justatest.com').shortUrl

Is.gd

isgd = Shortly::Clients::Isgd
isgd.shorten('http://justatest.com').shorturl

V.gd

vgd = Shortly::Clients::Vgd
vgd.shorten('http://justatest.com').shorturl

Tinyurl.com

tinyurl = Shortly::Clients::Tinyurl
tinyurl.shorten('http://justatest.com').shorturl

Command Line Utility

Shortly also provides command line utility. See some uses below.
shortly 'http://shortme.com/'

By default it uses Googl to short urls but you can specify which service to use. Type shortly -h for more info
shortly 'http://shortme.com/' -s bitly -l '<your-login>' -p '<your-apiKey>' -m method-to-use

here are options and there possible values:

Options What value do they take
-s or —service Service to use(e.g. bitly, isgd(default googl))
-m or —method Method to use(e.g. expand or shorten or analytics(default shorten))
-l or —login Login credential(required for bitly)
-p or —apiKey API Key credentials (for bitly and googl(optional) only)
Some more examples:
  • Google analytics
    shortly 'http://averylong.url/that/can/frustate?you=many&times=true' -p my_api_key -m analytics
    spits formatted json at CLI
  • Bitly
    shortly 'http://bit.ly/shrt -s bitly -p my_api_key -l my_login -m expand

Credits

More Info

For detailed info visit my blog http://BagwanPankaj.com

For more info write me at bagwanpankaj[at]gmail.com or me[at]bagwanpankaj.com

Copyright © 2010 Bagwan Pankaj: http://bagwanpankaj.com, released under the MIT license

Contributing to shortly

  • Check out the latest master to make sure the feature hasn’t been implemented or the bug hasn’t been fixed yet
  • Check out the issue tracker to make sure someone already hasn’t requested it and/or contributed it
  • Fork the project
  • Start a feature/bugfix branch
  • Commit and push until you are happy with your contribution
  • Make sure to add tests for it. This is important so I don’t break it in a future version unintentionally.
  • Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

Copyright

Copyright © 2010 [Bagwan Pankaj]. See LICENSE.txt for further details.

About

A Ruby wrapper for various url shortener services

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%