Skip to content

🎮 A CLI-based Pokémon Pokédex built with TypeScript for learning TypeScript fundamentals and CLI design.

Notifications You must be signed in to change notification settings

heinrichb/bootdotdev_pokedex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎮 Pokédex CLI (TypeScript)

This repository contains the Pokédex CLI project, developed as part of the Boot.dev course. The goal of this project is to build an interactive command-line interface for managing a Pokédex, showcasing TypeScript and CLI development skills.

🚀 Features

  • Interactive CLI: Navigate, explore, and interact with your Pokédex directly from the terminal.
  • Pokémon Management: Add, inspect, and view Pokémon details seamlessly.
  • API Integration: Fetch Pokémon data dynamically from an external API.
  • Stateful Design: Maintain Pokédex state across multiple commands.
  • Error Handling: Gracefully manage invalid inputs and API errors.

🔧 Technologies Used

  • TypeScript: Core language for development.
  • Node.js: Runtime environment for the CLI.
  • CLI Design: Implementing an interactive command-line experience.
  • Testing: Unit tests with Vitest.

📖 What I Learned

  • Building a CLI tool from scratch in TypeScript.
  • Managing application state effectively within a command-line interface.
  • Integrating with external APIs to fetch and process data.
  • Writing clean, maintainable, and testable TypeScript code.
  • Handling errors gracefully in user-facing tools.

🧪 Testing

Unit tests were written to verify core functionality, including:

  • Ensuring correct Pokédex updates when Pokémon are caught or inspected.
  • Validating API integration and error handling.
  • Simulating CLI commands to test user interactions.

Run tests with:

npm test

🌟 Why This Project?

The Pokédex CLI project was built to:

  • Strengthen TypeScript proficiency.
  • Learn best practices in CLI tool design and user experience.
  • Gain practical experience with API integration and data handling.
  • Showcase skills in testing and error management for robust applications.

📂 Project Structure

├── src/             # Core logic and CLI commands
├── tests/           # Unit tests
├── package.json     # Project configuration
└── README.md        # Project documentation

🔗 Related Resources


Feel free to explore, test, and contribute to this project! 🚀

About

🎮 A CLI-based Pokémon Pokédex built with TypeScript for learning TypeScript fundamentals and CLI design.

Topics

Resources

Stars

Watchers

Forks