Skip to main content
The Poke-Nex component library provides a comprehensive set of React components for building Pokemon-themed applications. All components are built with TypeScript, support client-side rendering with React hooks, and follow modern React best practices.

Component Categories

Pokemon Components

Display and interact with Pokemon data including cards, galleries, and detail views

Type Calculator

Calculate type effectiveness and manage type selection for Pokemon battles

Evolution Chain

Visualize Pokemon evolution chains with special support for Eeveelutions

Favorite System

Toggle and manage favorite Pokemon with persistent storage

Pokemon Display Components

These components handle the display and interaction with Pokemon data:
  • PokemonCard - Individual Pokemon card with image, types, and favorite button
  • PokeGallery - Full-featured gallery with filtering, sorting, and pagination
  • PokemonDetailView - Comprehensive detail view with variety selection and stats

Type System Components

Calculate and display Pokemon type effectiveness:

Evolution Components

  • EvolutionChain - Server-side component for displaying evolution chains

Interactive Elements

  • FavoriteButton - Toggle favorite status with Zustand store integration

Design Principles

Type Safety

All components are built with TypeScript and use strict type definitions from the @/types package.

Client Components

Most components use the 'use client' directive for client-side interactivity, with the exception of EvolutionChain which is a server component.

Theme System

Components leverage the POKE_THEMES constant to provide consistent type-based styling across the application.

Performance

Components use React best practices including:
  • memo for expensive renders
  • useMemo for computed values
  • Efficient state management with Zustand

Getting Started

Browse the individual component documentation to learn about props, usage examples, and implementation details.

Build docs developers (and LLMs) love