Skip to content

alexdovzhanyn/devrant

Repository files navigation

Gem Version

Devrant

devRant

This gem is the unnofficial wrapper for the devRant API. It provides convinience methods and an interface to easily integrate devRant into your ruby projects.

Installation

Add this line to your application's Gemfile:

gem 'devrant'

And then execute:

$ bundle

Or install it yourself as:

$ gem install devrant

Usage

Include this gem into your project:

require 'devrant'

Initialize the devRant client:

devRant = Devrant::Api.new

Rants

Getting all rants:

require 'devrant'

devRant = Devrant::Api.new

devRant.rants.all

Getting rant by ID:

require 'devrant'

devRant = Devrant::Api.new

devRant.rants.get_rant(1234)

Filtering Rants

Allows you to fetch rants based on certain filters. Takes in a hash of parameters.

Method Parameters
get_rants limit, sort, skip

Parameter Values

Parameter Values Description
limit Optional any integer Sets a maximum limit to the amount of rants returned
sort Optional 'recent', 'algo', 'top' Specifies order in which to sort the rants
skip Optional any integer Specifies how many rants to skip. Useful for pagination

Example:

require 'devrant'

devRant = Devrant::Api.new

devRant.rants.get_rants({limit: 10, sort: 'algo', skip: 5})

Getting the Weekly Rants

Find all rants that are featured weekly

require 'devrant'

devRant = Devrant::Api.new

devRant.rants.weekly

Getting Story Rants

Get rants that are categorized as a 'story'

require 'devrant'

devRant = Devrant::Api.new

devRant.rants.stories

Getting Collabs

Fetches all collabs

require 'devrant'

devRant = Devrant::Api.new

devRant.rants.collabs

Searching Rants

Search rants by a specific search term

require 'devrant'

devRant = Devrant::Api.new

devRant.rants.search('your search term here')

Getting a Random Rant

Returns a random rant with at least 15++

require 'devrant'

devRant = Devrant::Api.new

devRant.rants.random

Commenting on a Rant

Post a comment. You must authenticate before trying to post a comment.

Method Parameters
comment rant_id (int), comment_content (string), token_id (int), token_key (string), user_id (int)
require 'devrant'

devRant = Devrant::Api.new

auth = devRant.users.authenticate('username', 'password')

devRant.rants.comment(12345, 'This is my comment', auth.id, auth.key, auth.user_id)

Users

Getting User by ID:

require 'devrant'

devRant = Devrant::Api.new

devRant.users.get_user(1234)

Getting User ID from Username

require 'devrant'

devRant = Devrant::Api.new

devRant.users.get_user_id('RuntimeError')

Authenticating a User

Returns an auth object with a token id, token key, and user id.

require 'devrant'

devRant = Devrant::Api.new

devRant.users.authenticate('username', 'password')

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/alexdovzanyn/devrant. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.

Code of Conduct

Everyone interacting in the Devrant project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.

Endpoints to Implement

  • /devrant/rants
  • /devrant/rants/:id
  • /users/get-user-id
  • /users/:id
  • /comments
  • /vote
  • /devrant/search
  • /devrant/weekly-rants
  • /devrant/story-rants
  • /devrant/collabs
  • /devrant/rants/surprise
  • /users/auth-token

About

Ruby Wrapper for the devRant API

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published