Project

mtg_sdk

0.05
No release in over 3 years
Low commit activity in last 3 years
There's a lot of open issues
Magic: The Gathering SDK is a wrapper around the MTG API located at magicthegathering.io
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.12
~> 0.8
~> 5.9
~> 11.2
~> 0.12
~> 3.0
~> 2.1

Runtime

~> 2.0
~> 1.12
~> 0.5
~> 1.0
~> 1.0
 Project Readme

Magic: The Gathering SDK

mtg-developers on discord Gem Version Build Status Dependency Status Code Climate Test Coverage

This is the Magic: The Gathering SDK Ruby implementation. It is a wrapper around the MTG API of magicthegathering.io.

Installation

Add this line to your application's Gemfile:

gem 'mtg_sdk'

And then execute:

$ bundle

Or install it yourself as:

$ gem install mtg_sdk

Usage

To change the API version (currently defaults to version 1)

MTG.configure do |config|
  config.api_version = 2
end

Classes

Card
Set
ForeignName
Ruling
Legality
Subtype
Supertype
Type
Changelog

Properties Per Class

Card

name
multiverse_id
layout
names
mana_cost
cmc
colors
color_identity
type
supertypes
subtypes
rarity
text
flavor
artist
number
power
toughness
loyalty
variations
watermark
border
timeshifted
hand
life
reserved
release_date
starter
rulings
foreign_names
printings
original_text
original_type
legalities
source
image_url
set
set_name
id

Set

code
name
gatherer_code
old_code
magic_cards_info_code
release_date
border
type
block
online_only
booster
mkm_id
mkm_name

ForeignName

language
name
multiverse_id

Ruling

date
text

Legality

format
legality

Changelog

version
release_date
details

Functions Available

Find a card by multiverse id

card = MTG::Card.find(386616)

Filter Cards via query parameters

cards = MTG::Card.where(set: 'ktk').where(subtypes: 'warrior,human').all

Find all cards (will take awhile)

cards = MTG::Card.all

Get all cards, but only a specific page of data

cards = MTG::Card.where(page: 5).where(pageSize: 100).all

Find a set by code

set = MTG::Set.find('ktk')

Filter sets via query parameters

sets = MTG::Set.where(name: 'khans').all

Get all Sets

sets = MTG::Set.all

Get all Types

types = MTG::Type.all

Get all Subtypes

subtypes = MTG::Subtype.all

Get all Supertypes

supertypes = MTG::Supertype.all

Contributing

  1. Fork it ( https://github.com/[my-github-username]/mtg-sdk-ruby/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request