A React project for fetching and displaying data!
Explore the repo »
Table of Contents
Welcome to Gotta fetch() 'Em All, an exciting Pokémon encounter game built with React. Leveraging the PokéApi, this project delivers an engaging experience for Pokémon enthusiasts. This project allows users to explore various Pokémon locations, initiate encounters, and engage in battles to capture new Pokémon.
To get a local copy up and running follow these simple steps.
Before you begin, ensure you have met the following requirements:
- Docker: Required for running in a containerized environment
- npm: Required for running it locally
- Clone the repo
git clone https://github.com/CodecoolGlobal/gotta-fetch-em-all-react-faboknorbert
- Move to the root folder
cd 3w_gotta-fetch-em-all-react
-
Install NPM packages (only have to do it once unless you modify the dependencies)
npm install
-
Run the application
npm start
-
You can now access the application at http://localhost:3000
-
To stop the application
`Ctrl + c`
- Build the Docker image (only have to do it once unless you modify the Dockerfile or removed the container):
docker build -t pokemon .
- Start the container:
docker run -p 3000:80 --name pokemon-container -d pokemon
- You can now access the application at http://localhost:3000
- To stop the container:
docker stop pokemon-container
- To remove the container (use only if you no longer need it):
docker rm pokemon-container
- Dynamic Pokémon encounters based on location
- Real-time battle mechanics with win/loss logic
- Responsive UI built with React
- Dockerized for seamless deployment
- Start by entering your username
- Select your starter Pokémon
- And choose a location to visit
- When you encounter a Pokémon, you can fight it or flee from the area
- If you battle it and win you can use it on the next encounter
- If you had it already, no duplication will happen
- If you loose, the enemy will flee
- Currently, the game lacks database connectivity, meaning progress cannot be saved yet
- Right now, there's no database connection for the game, so you cannot save your progress
Change a location and an area where you want to travel. If there is a Pokémon there, choose one of yours and try to catch it by winning the fight.
Below is a list of completed and planned features for the project. Checkmarks indicate implemented features:
- Fetch Pokémon data from PokéAPI
- Build UI for location-based Pokémon encounters
- Allow users to catch Pokémon in battles
- Pokédex like display for caught Pokémon
- Connect to a database to save user progress
- Enhance battle mechanics (e.g., implement Pokémon abilities)
- Deploy the app using Docker and make it publicly accessible
- Add story mode
- Add multiplayer mode
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Norbert Fabók - GitHub Profile
György Kocsis - GitHub Profile
Máté Pojbics - GitHub Profile
Project Link: https://github.com/CodecoolGlobal/gotta-fetch-em-all-react-faboknorbert
Distributed under the MIT License. See LICENSE
for more information.