Git Product home page Git Product logo

mtg_ssm's Introduction

mtg-ssm - Magic: the Gathering Spreadsheet Manager

mtg-ssm is a tool for creating/updating user-friendly spreadsheets with Magic: the Gathering collection information. The tool can also import/export data to/from these spreadsheets to other formats, such as CSV files.

As a matter of convenience, you can store the created spreadsheet in Dropbox, Google Drive, or the like and access your collection from anywhere.

Installation

mtg-ssm is available on PyPI so, if you have python (>=3.3) and pip installed on your system, you should be able to get mtg-ssm by entering the following into a terminal:

pip3 install mtg_ssm

Updates can be performed by entering:

pip3 install -U mtg_ssm

You can verify installation from the terminal by running:

mtg-ssm --help

Usage

For first time use, you will want to create an empty spreadsheet with card data:

mtg-ssm collection.xlsx

In the future, when new sets are released, running the same command will update your collection spreadsheet while keeping existing counts:

mtg-ssm collection.xlsx

Existing collections

If you already have your cards in another collection store, you might want to import that collection into your card spreadsheet.

First create an example csv file:

mtg-ssm --format csv collection.csv.example

Then modify the template to match your counts and import into your spreadsheet:

mtg-ssm collection.xlsx collection.csv

Export / import to deckbox

If you already have your cards entered into Deckbox, you can export a csv from deckbox and import the contents into a spreadsheet just as you might merge from an existing collection using the "deckbox" import format:

mtg-ssm --import_format collection.xlsx Inventory_username_2016.March.10.csv

Alternatively, if you have your collection in a spreadsheet already and would like to load your data into deckbox to check prices or share with other people, just go the other direction.

mtg-ssm --format inventory.csv collection.xlsx

Deckbox Warning

MTG JSON, which we use for card data doesn't always map 1-to-1 to cards in Deckbox. This means that data can lose granularity in going from one form to the other, or back. If you intend to use both native mtg-ssm spreadsheets and Deckbox, I encourage you to choose one to be authoritative and always export to the other; going back and forth is probably not a good idea.

The following conversion issues are known to exist:

  • Sets that contain multiple versions of the same card (ex. Thallid in Fallen Empires) may lose track of the specific version when going back and forth.
  • Alternate art cards (ex. Ertai, the Corrupted in Planeshift) may lose track of the art version when going back and forth.
  • Not all Clash Pack cards are available in mtg-ssm.

Contributions

Pull requests are welcome and contributions are greatly appreciated.

Issues can be reported via GitHub.

Acknowledgments

  • Wizards of the Coast: For making Magic: the Gathering and continuing to support it. Off and on, it's been my favorite hobby since the early '90s.
  • MTG JSON: MTG JSON is an amazing resource for anyone looking to build tools around magic card data. It is pretty much THE source for structured magic card data. Without MTG JSON this project would not have been possible.

Changelog

1.2.3

  • Hack to work around missing "releaseDate" and "type" in MTG JSON 3.3.14

1.2.2

  • Add "All Cards" page with index of all cards in XlsxSerializer.

1.2.1

  • Add support for deckbox.org import/export.
  • Backend improvements.

1.2.0

  • Complete rework of the serialization architecture.
  • Rebuild of the manager cli.
  • Incompatible CLI interface changes. See help for new usage information.

1.1.0

  • Complete rework of the data model storage. Drop sqlite based data models in favor of custom classes and dict based indexes.
  • Switch to accepting all versions of MTGJSON instead of bumping for every release.

1.0.2

  • Version bump MTGJSON support.

1.0.1

  • Fixed some PyPI related issues.

1.0.0

  • Initial stable release.

mtg_ssm's People

Contributors

gwax avatar

Watchers

Ben McGraw avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.