A modern React application for searching and viewing Pokemon cards from all editions. Built with a beautiful, responsive UI that displays cards grouped by Pokemon name, showing all available variants and editions.
- 🔍 Search Pokemon Cards: Search for any Pokemon by name
- 🎴 Multiple Editions: View all card editions and variants for each Pokemon
- 📱 Responsive Design: Works perfectly on desktop, tablet, and mobile
- 🎨 Modern UI: Beautiful gradient backgrounds and smooth animations
- ⚡ Fast Loading: Optimized API calls and loading states
- 💰 Price Information: Shows market prices when available
- 🛡️ Error Handling: Graceful error handling and user feedback
The app features:
- Gradient background with glassmorphism effects
- Card grid layout with hover animations
- Loading spinners and error states
- Mobile-responsive design
- Clean, modern typography
- Node.js (version 14 or higher)
- npm or yarn
- Clone or download this repository
- Navigate to the project directory
- Install dependencies:
npm install- Start the development server:
npm start- Open http://localhost:3000 to view it in the browser
- Search: Type a Pokemon name in the search bar (e.g., "Pikachu", "Charizard", "Mewtwo")
- View Results: All card editions for that Pokemon will be displayed in a grid
- Explore: Each card shows:
- High-quality card image
- Set name and series
- Card number and rarity
- Market price (when available)
This app uses the Pokemon TCG API which provides:
- Free access to Pokemon card data
- High-resolution card images
- Market pricing information
- Comprehensive card details
- React 18: Modern React with hooks
- CSS3: Custom styling with gradients and animations
- Axios: HTTP client for API requests
- Pokemon TCG API: Card data and images
src/
├── components/
│ ├── SearchBar.js # Search input component
│ ├── CardGrid.js # Grid layout for cards
│ ├── CardItem.js # Individual card display
│ ├── LoadingSpinner.js # Loading state component
│ └── ErrorMessage.js # Error state component
├── services/
│ └── pokemonApi.js # API integration
├── App.js # Main application component
├── App.css # Main application styles
├── index.js # React entry point
└── index.css # Global styles
- Real-time search with debouncing
- Searches Pokemon names across all card sets
- Returns up to 50 results for optimal performance
- Cards grouped by Pokemon name
- All editions and variants shown together
- High-quality images with fallback handling
- Responsive grid layout
- Smooth loading animations
- Error handling with helpful messages
- Mobile-optimized interface
- Accessibility considerations
You can easily customize the app by:
- Modifying colors in CSS files
- Adjusting the API query parameters
- Adding new card information fields
- Changing the layout and styling
Feel free to submit issues and enhancement requests!
This project is open source and available under the MIT License.