A macOS desktop app for managing your Pokemon card collection. Track inventory, grading, sales, and photos — all stored locally in an Excel workbook.
- Add cards by pasting a Cardmarket URL (auto-fills name, set, card number) or manually
- Collection view with filtering (All / Collection / For Sale / Sold / Grading)
- Grading tracker — submit cards for grading and record results
- Partial selling — sell part of your stock, track sales with profit calculation
- eBay integration — create draft listings directly from your inventory
- Photo upload from your phone via local WiFi (built-in web server)
- Cardmarket links — double-click a card to open its Cardmarket page
- Statistics tab with investment totals, grading overview, and sales summary
- Excel-based storage — your data lives in a standard
.xlsxfile you can open anytime
- macOS
- Python 3.10+ (pre-installed on modern macOS, or install via python.org)
- Xcode Command Line Tools (
xcode-select --install) for the native launcher
git clone https://github.com/Werizu/PokemonCardManager.git
cd PokemonCardManager
chmod +x install.sh
./install.shThis will:
- Create
~/Pokemon-Sammlung/with your data folders - Set up a Python virtual environment and install dependencies
- Create an empty Excel workbook with the correct structure
- Place a Poke Inv app on your Desktop (with icon)
Double-click Poke Inv on your Desktop, or run:
~/Pokemon-Sammlung/.venv/bin/python3 ~/Pokemon-Sammlung/pokemon_card_manager.py- Go to the Add tab
- Paste a Cardmarket URL — name, set, and card number fill automatically
- Select language, condition, source, and enter price/quantity
- Click Save
When the app is running, it starts a local web server for phone uploads:
- Look at the bottom of the window for the upload URL (e.g.
http://192.168.1.x:8080) - Open that URL on your phone (same WiFi network)
- Select the card ID and upload a photo
- Select a card in the Collection tab
- Click Mark Sold
- Enter sale price, platform, fees, and quantity to sell
- The inventory quantity decreases; a sales record is created
- Go to developer.ebay.com and sign in with your eBay account
- Click Create Application and select Production
- Under User Tokens → Get a Token from eBay via Your Application:
- Set Auth Accepted URL to
http://localhost:8089/ebay/callback - Set Auth Declined URL to
http://localhost:8089/ebay/declined
- Set Auth Accepted URL to
- Note down your App ID (Client ID), Cert ID (Client Secret), and RuName (listed under the redirect URLs)
- In Poke Inv, click eBay Settings (right side of the Collection tab)
- Enter Client ID, Client Secret, and RuName
- Set Marketplace to your region (e.g.
EBAY_DEfor Germany) - Click Save & Connect — eBay opens in your browser, authorize the app
- Select a card in the Collection tab
- Click List on eBay
- Confirm the price and quantity
- A draft listing is created — review and publish it in your eBay Seller Hub
All data is stored locally in ~/Pokemon-Sammlung/:
| Path | Content |
|---|---|
Pokemon-Inventar.xlsx |
Inventory, sales, and dashboard |
Fotos/ |
Card photos (named by card ID) |
Karten/ |
Additional card files |
.card_urls.json |
Cardmarket URLs per card |
.app_config.json |
Window size and preferences |
MIT