Project

papercall

0.0
No commit activity in last 3 years
No release in over 3 years
Small client library for the PaperCall API. With some analytics for the submissions.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 2.1.4
~> 2.16.2
~> 4.7, >= 4.7.3
~> 0.13.1
~> 13.0.1
~> 3.9.0
~> 0.90.0

Runtime

~> 1.8.5
~> 2.3.1
~> 1.12.1
~> 2.1, >= 2.1.0
 Project Readme

Papercall

Papercall.io is a nice conference management system that allows you to put out a call for papers and manage the entire review process. This ruby-gem uses the Papercall API to fetch all the submitted papers and do some analysis.

Examples of the type of stats available are:

  • Number of papers in different states
  • Number of active reviewers
  • Number of submitted papers without any feedback
  • Number of papers missing reviews

Installation

Add this line to your application's Gemfile:

gem 'papercall'

And then execute:

$ bundle

Or install it yourself as:

$ gem install papercall

Usage

The following code will fetch all the submissions from your event and print a summary of stats:

require 'papercall'

Papercall.configure do |config|
   config.API_KEY = "<your api key>"
end
Papercall.fetch(:from_papercall, :submitted, :accepted, :rejected, :waitlist, :declined)
Papercall.summary

The Papercall gem also allows you to fetch individual states, or just the ones you care about:

Papercall.configure do |config|
   config.API_KEY = "<your api key>"
end
Papercall.fetch(:from_papercall, :submitted, :accepted)

or

Papercall.configure do |config|
   config.API_KEY = "<your api key>"
end
Papercall.fetch(:from_papercall, :rejected, :declined, :waitelist)

The order does not matter.

You can also use this shortcut if you want to fetch all:

Papercall.configure do |config|
   config.API_KEY = "<your api key>"
end
Papercall.fetch(:from_papercall, :all)

Other configuration options

You can configure the following attributes:

  • API key
  • Turning output on or off (default is on)
  • Input file - used for reading from submissions from file (default: submissions.json)
  • Number of threads - number of parallel threads used to fetch ratings and feedback (default 150)

Example:

Papercall.configure do |config|
  config.API_KEY = "<your api key>"
  config.output = false
  config.threads = 200
  config.input_file = "my_subscription.txt"
end

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/joelmheim/papercall. 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.