vccs
Vue 3용 차트 컴포넌트 모음, Recharts에서 포팅
MTGJSON은 모든 매직: 더 개더링 데이터를 휴대형 포맷으로 정리하는 오픈소스 프로젝트이며, 여러 리소스와 파트너를 통해 정보를 수집합니다
MTGJSON is an open-source project that catalogs all Magic The Gathering data in portable formats. Using an aggregation process we fetch information between multiple resources and approved partners, an
데이터Python · DockerfileGitHub @mtgjson온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
MTGJSON build scripts for Magic: the Gathering
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
MTGJSON is an open-source repository of Magic: The Gathering card data, specifically in JSON and CSV formats. This repository contains the build scripts we use to create our data sets.README 전문 보기 ↗MTGJSON is an open-source repository of Magic: The Gathering card data, specifically in JSON and CSV formats. This repository contains the build scripts we use to create our data sets.
Running a project as large as ours isn't easy, and we rely on the community to help keep our project going. The community can support us through two different ways: financial contributions and code contributions.
We accept reoccurring donations via GitHub Sponsors, that grant priority support from MTGJSON maintainers and a special role on our Discord indicating your support.
This is the preferred approach for financial contributions, as the MTGJSON team pays no fees for these types of donations!
We accept reoccurring donations via Patreon, that grant priority support from MTGJSON maintainers and a special role on our Discord indicating your support.
We accept one-time donations via PayPal, for those who want to say thank you to the project.
We love it when the community contributes back to the project! If you'd like to help improve our data for the hundreds of projects and stores we support, do reach out via Discord!
The team stays in contact via Discord. The server is open to the public and is a great place to collaborate with other like-minded people. Stop by today and say hi!
The MTGJSON team has been led by Zach Halpern since 2018, with support from an awesome group of people. The full team lineup can be found MTGJSON's homepage.
MTGJSON at its core is a database that can be downloaded for offline access to Magic: the Gathering card data. We pride ourselves on our documentation, and aim for full transparency with the community.
Over time, MTGJSON has gone through a number of transitions to bring the best product for our consumers. We'd like to thank the following groups, in alphabetical order, for helping to support our mission by enriching our data:
MTGJSON supplies precompiled databases at https://mtgjson.com/api/v5/. This is the recommended way to use our service.
As stated before, we pride ourselves on our documentation which can be found at https://mtgjson.com/. If you find anything to be unclear or ambiguous, please open a ticket on our documentation repository so we can address your concern immediately.
We fully rebuild our API data once a day. You can poll the Meta.json file to see when our data was last updated.
Most of our users shouldn't have a need to build MTGJSON locally. However, there are always exceptions and we aren't ones to judge.
While MTGJSON will work on Windows, Mac, and Linux, we prefer working within the Linux environment for lower overheads and less manual dependency management.
MTGJSON is built on and tested against a wide range of Python3 versions. Currently, we maintain support for the following versions:
uv sync
We intend to put MTGJSON5 on the pip package archive in the near future, once the first set of revisions takes place.
A fully up-to-date help menu can be achieved via python3 -m mtgjson5 -h, but for your convenience here is a recent rundown:
usage: mtgjson5 [-h] [-s [SET [SET ...]] | -a] [-c] [-x] [-z] [-p]
[-SS [SET [SET ...]]] [-PB] [-R] [-NA]
optional arguments:
-h, --help show this help message and exit
-s [SET [SET ...]], --sets [SET [SET ...]]
Set(s) to build, using Scryfall set code notation.
Non-existent sets silently ignored.
-a, --all-sets Build all possible sets, overriding the --sets option.
-c, --full-build Build new prices, MTGSQLive, and compiled outputs like
AllPrintings.
-x, --resume-build While determining what sets to build, ignore
individual set files found in the output directory.
-z, --compress Compress the output folder's contents for
distribution.
-p, --pretty When dumping JSON files, prettify the contents instead
of minifying them.
-SS [SET [SET ...]], --skip-sets [SET [SET ...]]
Purposely exclude sets from the build that may have
been set using --sets or --all-sets.
mtgjson maintainer arguments:
-PB, --price-build Build updated pricing data then exit.
-R, --referrals Create and maintain a referral map for referral
linkages.
-NA, --no-alerts Prevent push notifications from sending when property
keys are defined.
Due to how the new system is built, a few advanced values can be set by the user in the shell environment.
MTGJSON5_DEBUG When set to 1 or true, additional logging will be dumped to the output filesMTGJSON5_OUTPUT_PATH When set, MTGJSON will dump all outputs to a specific directory
MTGJSON5_OUTPUT_PATH=~/Desktop will dump database files to /home/USER/Desktop/mtgjson_build_5XXX and log files to /home/USER/Desktop/logsMTGJSON uses VCR.py to record and replay HTTP interactions for deterministic offline testing. This allows tests to run without live network access while still validating against real API responses.
Cassettes are organized by host (e.g., api.scryfall.com.yml, api.cardmarket.com.yml) so multiple tests can share the same cassette file. This makes maintenance easier as you add more tests.
Normal local development (no flag):
# Default: uses "once" mode - replays from cassettes if they exist,
# records new cassettes if they're missing
pytest tests/mtgjson5/providers/scryfall/
Record new cassettes:
# Use "all" mode to overwrite existing cassettes with fresh recordings
pytest tests/mtgjson5/providers/scryfall/ --record-mode=all
Run tests in strict offline mode:
# Use "none" mode - only replays, fails if any cassette is missing
pytest tests/mtgjson5/providers/scryfall/ --record-mode=none
# Or set MTGJSON_OFFLINE_MODE environment variable (used in CI)
MTGJSON_OFFLINE_MODE=1 pytest tests/
Recording modes:
once - Record new cassettes if missing, replay existing ones (default for local dev)none - Only replay, fail if cassette missing (enforced in CI via MTGJSON_OFFLINE_MODE)all - Always record, overwrite existing cassettesCassettes are stored in tests/cassettes/ organized by host and should be committed to the repository.
MTGJSON is a freely available product under the MIT License, allowing our users to enjoy Magic: the Gathering data free of charge, in perpetuity.