Punk Records is a static, versioned JSON card dataset for the One Piece TCG. These files are generated using the vegapull tool, which fetches card and pack data from the official One Piece TCG website.
Most of the data is ©Eiichiro Oda/Shueisha ©Eiichiro Oda/Shueisha, Toei Animation, Bandai Namco Entertainment Inc.
The actual source code of the pipeline — are available under the GNU Affero General Public License 3.0 or later. See License for more details.
- Language folders with packs, cards, and indices:
- /packs.json — all packs released for the language/region
- /cards/.json — all cards in a pack
- /index/cards_by_id.json — quick lookup index (by card ID)
- /index/by_name.json — quick lookup index (by card name, case-insensitive)
- /manifest.json — metadata about the generation
- Supported Languages
- english (en)
- english-asia (en-asia)
- japanese (jp)
- chinese-hongkong (zh_hk)
- chinese-taiwan (zh_tw)
- thai (th)
- french (fr)
- Example (partial):
punk-records/
english/
packs.json
cards/
569001.json
OP01.json
index/
cards_by_id.json
by_name.json
manifest.json
french/
packs.json
cards/
569001.json
OP01.json
index/
cards_by_id.json
by_name.json
manifest.json
...
- Array of:
- id — pack ID string from the site (e.g., OP01, 569001)
- raw_title — original title string
- title_parts — parsed { prefix?, title, label? }
- Array of:
- id — card ID (e.g., ST01-004)
- pack_id — source pack ID
- name — card name (locale-specific)
- rarity — one of: Common, Uncommon, Rare, SuperRare, SecretRare, Leader, Special, TreasureRare, Promo
- category — one of: Leader, Character, Event, Stage, Don
- img_url — relative image URL from the site
- img_full_url — absolute image URL (convenience)
- colors — array (e.g., ["Red"])
- cost — integer or null
- attributes — array of attributes (e.g., ["Strike", "Slash"])
- power — integer or null
- counter — integer or null
- types — array of strings
- effect — rules text (localized)
- trigger — optional trigger text
Object mapping id -> { name, pack_id, rarity, colors }
Object mapping lowercased name -> list of IDs
{
"language": "<lang>",
"generated_at": <unix_ts>,
"split_per_card": bool,
"images": bool,
"source": "vegapull",
"version": "1"
}
You can generate the data yourself using the vegapull tool.
Prerequisites:
- Rust (for vegapull)
- Vegapull Binary:
cargo install vegapull - Python 3.9+ if using the helper script.
git clone https://github.com/buhbbl/punk-records.git
cd punk-records
python build_punk_records.py --language english --out-dir .
# Optional:
# --split-per-card also write per-card JSON files
# --images also download images per pack
# --clean delete existing lang dir before writing
# --vegapull <path> custom vegapull path/binary- This repository contains structured data derived from official sources. All trademarks and images are property of their respective owners.
- Use at your own discretion. Respect the terms of service of the data sources when generating updates.