/shotnr

Shotn is a url shortening application. The application accepts a long url and returns a shorter url that's much easier to remember. Alternatively, you can provide a custom string that will be used in the url.

Primary LanguageRuby

Build Status Coverage Status Code Climate

Shotnr

Shotn is a url shortening application. The application accepts a long url and returns a shorter url that's much easier to remember. Alternatively, you can provide a custom string that will be used in the url.

E.g http://stackoverflow.com/questions/1722749/how-to-use-rspecs-should-raise-with-any-kind-of-exception/1722839#1722839
becomes:
http://shotnr.com/L

You can access the live version on http://shotnr.com

Application Features

  1. Shortens a long url to a much shorter one and easier to remember
  2. Can accept a vanity string to provide a customised url
  3. User is able to edit the customised url and change the details.
  4. User can disable and enable shotlinks at will
  5. Gives statistics on how many times the shotlink has been used
  6. Shows the top users on the application based on their total clicks
  7. Shows the recent and popular shotlinks

Getting Started

  1. git clone https://github.com/andela-akabiru/shotnr.git
  2. cd shotnr
  3. bundle install
  4. rake db:setup
  5. rails serve

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisities

  1. Ruby
  2. PostgreSQL
  3. Bundler
  4. Rails
  5. RSpec

Running the tests

1. cd shotnr
2. bundle exec rake

Built With

  1. Ruby on Rails
  2. Bootstrap 4

Application Limitations

  1. The application only accepts a custom string of length > 5 characters

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git add -A && git commit -m 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

License

This project is licensed under the MIT License - see the LICENSE.md file for details