2025-08-17 20:55:38 +01:00
2025-08-17 20:55:38 +01:00
2025-08-17 20:55:38 +01:00
2025-08-17 20:55:38 +01:00
2025-08-17 20:55:38 +01:00
2025-08-17 20:55:38 +01:00
2025-08-17 20:55:38 +01:00
2025-08-17 20:55:38 +01:00

Baseball Cards Search (eBay Sold Listings)

Search eBay completed (sold) listings for baseball cards by player name. Simple, fast UI: a single centered search box and a “Search Sold” button. Results show image, title, sold price, and end time, with a click-through to the listing on eBay.

Features

  • Player name search against eBay “Completed (Sold)” items
  • Clean centered UI (input + button)
  • Results grid with image, title, price, end time
  • Click any result to open the eBay listing

Tech Stack

  • Backend: Node.js + Express
  • Frontend: Vanilla HTML/CSS/JS (served statically)
  • External API: eBay Finding API (findCompletedItems)

Prerequisites

  • Node.js 18+ recommended
  • eBay App ID (aka Client ID) from the eBay Developers Program (Production keys)

Setup

  1. Install dependencies:
    npm install
    
  2. Configure environment:
    • Copy .env.example to .env and set your App ID
      cp .env.example .env
      # then edit .env
      EBAY_APP_ID=YOUR_EBAY_APP_ID_HERE
      

Run

Usage

  1. Enter a player name (e.g., “Derek Jeter”) in the search box
  2. Click “Search Sold” (or press Enter)
  3. Browse results; click a card to open the listing on eBay

API

  • GET /api/ebay/search?player=...&page=...
    • Query params:
      • player (required): player name text
      • page (optional): page number (default: 1)
    • Response shape:
      {
        "results": [
          {
            "title": "...",
            "url": "https://www.ebay.com/itm/...",
            "image": "https://...",
            "price": "99.99",
            "currency": "USD",
            "ended": "2024-01-01T12:34:56.000Z"
          }
        ]
      }
      

Project Structure

public/
  index.html      # UI
  styles.css      # styles (centered layout)
  app.js          # client logic
server.js         # express server + eBay route
.env.example      # environment template (copy to .env)
package.json

Notes

  • Ensure EBAY_APP_ID is set; otherwise /api/ebay/search returns 500.
  • This app only surfaces limited listing metadata from eBays Finding API; you can expand it (conditions, set names, years, etc.) by refining keywords or adding item filters.
  • For production usage, consider rate limiting, caching, and stricter keyword sanitization.
Description
No description provided
Readme 39 KiB
Languages
JavaScript 60.9%
CSS 25.7%
HTML 13.4%