A Python/Flask web application built for real-time TCG (Trading Card Game) card pricing analysis and purchase-decision support. Powers inventory management for Trading Trail, an active eBay-based TCG resale business.
TCG card prices fluctuate daily. Vault connects to live market APIs to give you a real-time picture of your collection's value — and tells you whether a card is worth buying, holding, or selling based on current market data.
- Portfolio tracking — import and manage your card inventory with live market valuations
- Real-time pricing — pulls current market prices via API integration; no manual lookups
- Purchase-decision analytics — flags undervalued cards worth acquiring based on price trends
- Profit/loss tracking — compare purchase price against current market value across the collection
| Layer | Technology |
|---|---|
| Backend | Python 3, Flask |
| Data / APIs | TCG market pricing APIs (real-time) |
| Frontend | Jinja2 templates, HTML/CSS |
| Data processing | Python (pandas for price analytics) |
| Storage | JSON / local persistence |
vault/
├── app.py # Flask application entry point
├── routes/
│ ├── portfolio.py # Portfolio CRUD + valuation endpoints
│ ├── market.py # Market API integration layer
│ └── analytics.py # Pricing trend + buy/sell signal logic
├── services/
│ ├── market_api.py # Real-time price fetcher (rate-limited, cached)
│ └── scorer.py # Purchase-decision scoring engine
├── templates/ # Jinja2 HTML templates
├── static/ # CSS, JS
└── data/ # Local inventory store
Vault fetches live pricing data from TCG market APIs on demand, with caching to respect rate limits. Prices reflect current market sell prices, not outdated static data.
Given a card and its current price, the scorer evaluates:
- Current market price vs. 30-day trend
- Buy/hold/sell signal based on configurable thresholds
- Portfolio impact (does adding this card improve collection balance?)
The portfolio view shows total collection value at current market rates, individual card valuations, unrealized gains/losses since acquisition, and sorting by highest-value or highest-gain cards.
git clone https://github.com/prycehedrick/vault.git
cd vault
pip install -r requirements.txt
# Set your market API key
export MARKET_API_KEY=your_key_here
python app.py
# → http://localhost:5000Built to support Trading Trail — an eBay-based TCG resale operation managing 500+ active SKUs. Manual price lookups at that volume aren't viable; Vault replaced that workflow with automated API-driven pricing and purchase decisions.
Active — in use for Trading Trail inventory management. Screenshots and demo coming.
Pryce Hedrick · prycehedrick@gmail.com · linkedin.com/in/prycehedrick