Skip to content

ArthurFachel/pokevault

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PokéVault

Live demo Deployed with GitHub Pages License: MIT No build step

A Pokémon TCG collection tracker that runs entirely in the browser: no backend, no build step, no dependencies. Search a card by name or by its printed number, add the printings you own to one or more named collections, and track current market prices, 30-day movement, and total collection value in the currency of your choice.

Live demo → https://arthurfachel.github.io/pokevault/

PokéVault screenshot

Features

  • Live card search via TCGdex (up to date with new sets, no API key), with pokemontcg.io as a legacy fallback
  • Search by printed number (e.g. 113/084 or TG13/TG30): matches every set with that printed total so you pick the right one
  • Current market price per variant (Holofoil, Reverse Holo, …): TCGplayer (USD), falling back to Cardmarket (EUR)
  • 30-day price movement with a ▲/▼ badge and a per-card trend sparkline
  • Multiple named collections (profiles): create, rename, delete, and switch between them
  • Selectable display currency for the collection total: native, USD, EUR, BRL, or JPY
  • Local persistence: collections save automatically in the browser; Export/Import produces a portable JSON backup
  • Sorting by value, biggest 30-day mover, name, or recently added
  • Demo mode with sample data for offline/sandboxed environments

How it works

Current price TCGplayer market price per variant (USD); falls back to Cardmarket trend (EUR). Both ship embedded in TCGdex card responses.
30-day change Estimated from Cardmarket's avg1 vs avg30 sale averages (holo-aware), since TCGplayer exposes no price history.
Sparkline Plots Cardmarket's avg30 → avg7 → avg1 → trend points per card.
Number lookup 113/084 → matches sets whose printed total is 84, then fetches card 113 from each candidate set.
Display currency Converts the collection total and 30-day change using daily rates from the ExchangeRate-API open endpoint, with Frankfurter (ECB) as a fallback.
Persistence Browser localStorage by default; falls back to in-memory storage if unavailable. Export/Import moves data as a plain JSON file.

Tech stack

Single self-contained index.html: vanilla HTML, CSS, and JavaScript. No framework, no bundler, no package manager. Data comes from TCGdex, pokemontcg.io (fallback), ExchangeRate-API, and Frankfurter (fallback).

Getting started

git clone https://github.com/ArthurFachel/pokevault.git
cd pokevault
open index.html   # or just double-click it

No build step, no install step.

Deploying your own copy

GitHub → Settings → PagesDeploy from a branchmain, / (root).

Contributing

This started as a personal project, but issues and pull requests are welcome: bug reports, new currencies, additional data sources, or UI polish.

Disclaimer

Prices are indicative market data, not appraisals. Very recent releases may not have pricing until the marketplaces list them. This project is unaffiliated with Nintendo, The Pokémon Company, TCGdex, TCGplayer, or Cardmarket.

License

MIT © Arthur Domingues Fachel Nunes

About

A Pokémon TCG collection tracker that runs entirely in the browser — live prices, 30-day trends, multi-currency totals, and named collections. No backend, no build step.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages