tcgdex / cards-database Goto Github PK
View Code? Open in Web Editor NEWPokémon Trading Card Game Card (TCG) Database for the TCGdex API. ⭐ Leave a star if the project interest you !
Home Page: https://www.tcgdex.net
License: MIT License
Pokémon Trading Card Game Card (TCG) Database for the TCGdex API. ⭐ Leave a star if the project interest you !
Home Page: https://www.tcgdex.net
License: MIT License
Describe the change(s) you want to be added/enhanced
Add Chilling Reign informations
Blocked by #59
Describe the change(s) you want to be added/enhanced
Add new datas to support decks that are/was sold in the market
possible sourcing https://bulbapedia.bulbagarden.net/wiki/Theme_Deck_(TCG)
interface Deck {
name: Languages
typeFocus: Array<Types>
cards: Array<{
// card global id
id: string
// card quantity
quantity?: number
// if the card(s) is an holo
variant?: 'holo'
}>
}
data/[serie]/[set]/decks/[deckname].ts
or elsewhere
const deck: Deck = {
name: {
en: 'Charizard',
fr: 'Dracaufeu',
it: 'Charizard',
de: 'Glurak',
es: 'Charizard'
},
typeFocus: ['Fire'],
cards: [{
id: 'swsh4-25',
variant: 'holo'
}, {
id: 'swsh4-25'
}, {
id: 'swsh4-24',
quantity: 3
}, {
id: 'swsh4-23',
quantity: 3
}]
}
export default deck
found a missing set? create a new issue or comment below
Some sets are currently missing from the Database based on https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_Trading_Card_Game#Wizards_of_the_Coast_sets
to be able to know when specific cards were released (mostly for PROMO cards)
Add a regulationMark endpoint to filter by the regulation mark
Add an OpenAPI
https://bulbapedia.bulbagarden.net/wiki/Miscellaneous_Promotional_cards_(TCG)
IT will also help with #91
found another missing images? create a new issue or comment below
Describe the change(s) you want to be added/enhanced
Add a logo field to the series (is the first set logo mainly)
Alias the French only set
2013 was not published in any other languages
2018 and 2019 were 40 cards sets instead of the 12 cards (and totally different)
The goal of set.variants
was to know if there was cards available in a variant in the set.
This is now better expressed by using the set.cardCount
and can be removed from the API
note: deprecate it in the SDKs beforehand
Rename from tcgdex/distribution
to tcgdex/server
I want to add some new APIs systems like a GraphQL one (AND maybe finish the documentation lol)
APIs I want to try out
Set
all
Set to be removed: Reason
Describe the change(s) you want to be added/enhanced
Add informations about Evolving Skies
https://www.pokemon.com/us/pokemon-tcg/sword-shield-evolving-skies/explore-and-watch/
Describe the change(s) you want to be added/enhanced
Add regulation Mark field
this field is going to be a lot of work:
The main goal of this field would be to list all the reprint of the same cards.
Some things are to see before:
It is now not needed as it is automaticly fetched from the count of cards in the folder
there is a Baby stage cel25-20A
compiler/utils/translations
Currently on the Compiler repository it would be better if hosted on the cards-database repository
Also, change the format from JSON to Typescript to have easy access
Describe the change(s) you want to be added/enhanced
Generally each series add their own new version of an energy card
the goal would be to add support in the serie file of which energy cards were in this serie
{serie-id}-{type.toLowerCase()}
(unblocking #33)export interface Serie {
id: string
name: Languages
+ energies?: Array<Types>
}
Serie wide cards are currently not listable as the schemas have the set
field has mandatory
The Goal would be to make set
optional and to add a serie
field mandatory
in the api.d.ts
schema
/**
* Card Set
*/
- set: SetResume;
+ set?: SetResume
+
+ /**
+ * Card Serie
+ */
+ serie: SerieResume
Describe the change(s) you want to be added/enhanced
Make Each Promos Series Names unique to be clearly identifiable
Allow to filter by using the pokemon card suffix
Describe the change(s) you want to be added/enhanced
Added a dexId endpoint to filter Pokemon cards by their national pokedex IDs
note: a card can have multiple dexIds if multple pokemon are on it
It is now not needed as set.cardCount
indicate more precisely the same information
Update the compiler to not use the database value tcgdex/compiler@86c8a17
Remove it from the Database e3c55a5
Deprecate it in SDKs
Describe the change(s) you want to be added/enhanced
Swap from a card/set based Legal generation to a file based one
a new file named legals.ts would be created and it would have fields like this
type Filter = {
includes: {
sets: Array<string> // array of sets names
regulationMark: Array<String> // array of marks
},
exclude: {
cards: Array<string> // Array of card full id
}
}
standard: Filter = {}
expanded: Filter = {}
the main goal is to make it less hard to change legals for each cards/set/everything
Goal is to make it before the 2021-09-10 to be up with the new system from Pokemon
Sources:
https://www.pokemon.com/us/pokemon-news/2022-pokemon-tcg-championship-series-season-format-rotation/
https://www.pokemon.com/us/pokemon-tcg-banned-card-list/
blocked by #12
Add a new Endpoint that filter cards by variants
Some cards are available as Jumbo and other are available as prerelease
https://bulbapedia.bulbagarden.net/wiki/Prerelease_cards_(TCG)
https://bulbapedia.bulbagarden.net/wiki/Jumbo_cards_(TCG)
note: if Jumbo cards have no unique cards Jumbo set will be removed from v3 in #103
Autogenerated output to track translation progress would be great. Would likely need to collect base data first on which sets released in which language.
From #141 (comment)
So the new goal in the short term are:
In the long term (After finishing the Documentation):
{"label"=>"Card"}
attacks
Some cards have a duplicated entry in 'attacks'. The duplicated entry seems to always have only a french translation. Example
List of all cards which are seemingly affected by this issue, based on iterating them and searching for attacks without an english name:
bwp-BW85
dp1-120
dp1-121
dp1-122
dp3-10
dp3-83
dp3-86
dp3-95
dp5-4
dp5-11
dp5-57
dp5-72
dp5-78
dp5-91
hgss1-11
hgss1-30
hgss1-44
hgss1-46
hgss3-87
hgss3-88
hgss3-89
hgss3-90
hgss4-99
hgss4-100
hgss4-101
hgss4-102
sm5-58
sm5-62
sm5-77
sm5-89
sm6-31
sm6-74
sm6-96
sm7.5-7
sm8-19
sm8-144
sm8-154
sm9-10
sm9-51
sm10-1
sm10-20
sm10-107
sm10-130
sm10-191
sm10-192
sm10-194
sm11-35
sm11-54
sm11-71
sm11-126
sm11-214
sm11-215
sm11-217
sm11-218
sm11-220
sm11-221
sm11-222
sm11-225
sm11-226
sm12-210
sm12-211
sm12-212
sm12-214
sm12-215
sm12-216
sm12-223
sm115-29
sm115-44
smp-SM166
smp-SM168
smp-SM169
smp-SM201
xy1-114
xy2-13
xy2-69
xy2-79
xy2-107
xy2-108
xy2-109
xy5-55
xy5-149
xy5-151
xy6-35
xy6-59
xy6-61
xy6-76
xy6-100
xy6-102
xy6-105
xy7-8
xy7-11
xy7-15
xy7-18
xy7-21
xy7-28
xy7-32
xy7-35
xy7-43
xy7-50
xy7-67
xy7-85
xy7-92
xy7-96
xy7-97
xy7-98
xy8-12
xy8-50
xy8-79
xy8-92
xy8-104
xy8-113
xy9-18
xy9-41
xy10-19
xyp-XY39
xyp-XY63
xyp-XY87
xyp-XY154
Currently each cards have a Pokémon Weight and Height.
idk how to put this in the database and how to transform it in the distribution base.
ex:
a float in KG in the db and the dist show and object with each thingy
OR
the API show the internationnal format and each SDKs have helper function to translate it to another format
Automatically calculate the set.cardCount.total
field
The main goal is to easily fix errors generated from the compiler when paths are changed or data are added/removed
It would also allows to make WAY better tests on the PRs as We would be able to build the whole database and run a command like git diff to see the changes instead or crossing my fingers that I didn't break everything
Describe the change(s) you want to be added/enhanced
Palkia & Dialga LEGEND from the set Triumphant 101
the LEGEND suffix should ba a stage
Allow to filter Pokemon cards by using their stage
Currently there is multiple rarities in the TCG, Common
, Uncommon
, Rare
and ultra Rare
(white instead of black) are the four most common with their symbols on the cards itself.
A Card HAS only one rarity (unless the TCG change).
some other cards have a rarity of "Holofoil Rare"/"Rare holo"/"Holo Rare" and while they could be used in the rarity field it would be redundant with the variants.holo
field.
So it would mean that the following rarities will be used in the v3:
A
in a rainbowA declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.