glacials / Whatsinstandard
Programming Languages
Labels
Projects that are alternatives of or similar to Whatsinstandard
What's in Standard?
What's in Standard? is a simple reference page made to help new (or not new) Magic: The Gathering players easily check which sets are currently in Standard, see when the next rotation is going to happen, and understand how rotations work.
Development
Dependencies
Running it locally
git clone [email protected]:glacials/whatsinstandard
cd whatsinstandard
yb build
yb exec
Then open localhost:8080 in your browser!
Updating set information
If you're looking to add, remove, or change a set, you'll want to change api/internal.json
then run
yb build
to regenerate the API. This file is the source of truth for set information, as the website itself consumes the APIs generated from this file.
Updating set icons
Set icons are supplied by Keyrune. If a new set icon is not showing or is invalid, you just need to update Keyrune:
npm update keyrune
Any pull requests that simply update Keyrune are welcomed and will be accepted!
Tests
The API has a few tests. They run on build, but you can run them separately with
yb build test
To autorun them whenever test files update, use
npm run autotest
Tech
What's in Standard? uses Vue.js, a lightweight JavaScript framework. It fetches the setlist from its own API and filters it based on release and drop dates.
API
We've got an API. It's super slim and the output is written by hand but it works like a charm.
/api/v6/standard.json
This is the only API call we have. It returns something like this:
{
"deprecated": false,
"sets": [
{
"name": "Kaladesh",
"codename": "Lock",
"code": "KLD",
"symbol": {
"common": "http://gatherer.wizards.com/Handlers/Image.ashx?type=symbol&size=large&rarity=C&set=KLD",
"uncommon": "http://gatherer.wizards.com/Handlers/Image.ashx?type=symbol&size=large&rarity=U&set=KLD",
"rare": "http://gatherer.wizards.com/Handlers/Image.ashx?type=symbol&size=large&rarity=R&set=KLD",
"mythicRare": "http://gatherer.wizards.com/Handlers/Image.ashx?type=symbol&size=large&rarity=M&set=KLD"
},
"enterDate": {
"exact": "2016-09-30T00:00:00.000"
},
"exitDate": {
"exact": "2018-10-05T00:00:00.000",
"rough": "Q4 2018"
}
},
...
],
"bans": [
{
"cardName": "Rampaging Ferocidon",
"cardImageUrl": "https://img.scryfall.com/cards/large/en/xln/154.jpg?1527429722",
"setCode": "XLN",
"reason": "Banned for being too effective a shutdown against counters to aggressive red (filling the board with small creatures and gaining life).",
"announcementUrl": "https://magic.wizards.com/en/articles/archive/news/january-15-2018-banned-and-restricted-announcement-2018-01-15"
},
...
]
}
The array is guaranteed to contain all sets currently in Standard, but also contains recently dropped sets and some future sets. For API details including how to filter them, see the API readme.
Attributions
Thanks to:
- For SVG images: Keyrune
- For favicon: Nils Enevoldsen