This is a technical assessment made for self-taught developers and bootcamp grads to test their frontend functional knowledge with React.
Before looking at the code, please switch to the starter branch. The solution code exists on the main branch
- View a list of 20 Pokémon on the home page
- Click on a Pokémon to view detailed information
- Responsive design that works on mobile and desktop
- Loading states and error handling
pokemon-technical.mp4
- React
- TypeScript
- Vite
- Tailwind CSS
- React Router v7
src/
├── assets/ # Static assets
├── components/ # Reusable UI components
│ ├── ErrorMessage.tsx
│ ├── LoadingSpinner.tsx
│ └── PokemonCard.tsx
├── pages/ # Page components
│ ├── HomePage.tsx
│ └── PokemonDetailPage.tsx
├── App.tsx # Main application component
├── main.tsx # Application entry point
├── types.ts # TypeScript type definitions
└── index.css # Global styles
- Clone the repository
- Install dependencies:
npm install - Start the development server:
npm run dev - Open your browser and navigate to
http://localhost:5173
This project uses the PokéAPI to fetch Pokémon data:
- List endpoint:
https://pokeapi.co/api/v2/pokemon?limit=20 - Detail endpoint:
https://pokeapi.co/api/v2/pokemon/{name}
MIT