Skip to content

Rjt5412/pokedexcli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PokédexCLI

A command-line Pokédex application that allows you to explore the Pokémon world, catch Pokémon, and manage your collection using a REPL interface.

PokédexCLI Demo

Features

  • Explore Pokémon locations in the world
  • Catch wild Pokémon with a chance-based system
  • Inspect caught Pokémon's stats and details
  • View your Pokédex collection
  • Built-in caching system for API responses

Data source: PokéAPI

Installation

# Requires Go 1.20 or higher
git clone https://github.com/yourusername/pokedexcli
cd pokedexcli
go build

Usage

./pokedexcli

Available Commands

  • help - Display all available commands
  • map - Show next 20 locations
  • mapb - Show previous 20 locations
  • explore <location> - Explore Pokémon in a location
  • catch <pokemon> - Try to catch a Pokémon
  • inspect <pokemon> - View details of caught Pokémon
  • pokedex - View all caught Pokémon
  • exit - Exit the Pokédex

Technical Details

  • Built in Go
  • Uses PokeAPI (https://pokeapi.co/)
  • Implements in-memory caching with 30-minute expiration
  • Concurrent cache cleanup

Roadmap & Future Enhancements

  • Command History
    • Support "up" arrow to cycle through previous commands
  • Enhanced Gameplay
    • Simulate battles between pokemon
    • Pokemon party system with leveling
    • Evolution system based on time
    • Random encounters with wild pokemon
    • Different types of Pokéballs with varying catch rates
  • Technical Improvements
    • Additional unit test coverage
    • Code refactoring for better organization
    • Persistent storage for saving progress
  • Enhanced Exploration
    • Direction-based navigation system
    • More interactive location exploration

About

Pokedex created in Go command line REPL format using data from PokeAPI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages