A gem for playing Pokemon cards
HTML Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


This does not work yet. I will make a v1.0 release when I feel like the core base set functionality exists.


This is my Pokemon TCG engine, written in Ruby and distributed as a RubyGem. It's still in the early stages of development. The gem itself is located in /engine, while the console client for playing/testing the gem is located in /clients/PokeCli.

I'm aiming to emulate just the gameplay of the base set for the time being, and I'll expand to later versions after the core mechanics are down.

I'm including a few scrapers, but no directly usable Pokemon trademarked content. Feel free to use the scrapers to generate your own sets and play.

I'm writing this partly out of my love of the game, and partly out of my interest in writing an engine to emulate it. I intend for this to become a framework to which anyone could attach a database of cards, an AI, a frontend, or any other number of things. I'll be writing a Terminal-based client first, and then probably a Shoes frontend and a Rails version. I don't intend on ever really pushing a release to the community or releasing a production website to play cards on; Wizards has that covered. My goal is mostly to take some subject of interest to me and use it to motivate my good habits of coding for fun and not just 9-5 for profit. I hope nobody makes me take it down :(

This doesn't work with _______ card!

Obviously, unique card effects would require extra functionality in the engine. Open an issue and I'll look in to it. Better yet, fix it yourself and send me a pull request!

So far, my best idea for deck packaging is a directory/zip consisting of a .ymlfile and optionally a set of .rb files which extend the PokeTCG::Card::Pokemon class and implement more complicated attacks/effects directly. My goal is for any card from the base set to work straight out of the box in a .yml file which defines its features, and to have a working scraper/parser which can parse pokepedia data into functional card YAML.

Copyright and License

Code and documentation © 2015 Wesley Boynton. Code released under the MIT license.

Pokémon © 2002-2015 Pokémon. © 1995-2015 Nintendo/Creatures Inc./GAME FREAK inc. TM, ® and Pokémon character names are trademarks of Nintendo. No copyright or trademark infringement is intended in the use of any PokemonTM-related imagery or content.