A Pokemon minigame where you can explore, catch, and battle them all. Built with React JS and consumes public PokeAPI.🍺
⚠️ DISCLAIMER: Fan-Made Educational ProjectThis project is created solely for educational and non-commercial purposes to demonstrate modern web development skills (React, State Management, Game Logic).
All Pokémon content, including names, images, and related media, are intellectual property of Nintendo, Game Freak, and Creatures Inc. This project is not affiliated with, endorsed, sponsored, or specifically approved by Nintendo. No copyright infringement intended.
Pokegames introduces a unique Custom RPG Battle System. While we respect the classic Elemental Type Effectiveness (e.g., Water is super effective against Fire), the core combat logic is custom-designed to fit a web-based mini-RPG experience.
We implemented fresh mechanics such as:
- Action Set: Basic Attack, two elemental Skills with cooldowns, and a type-based Ultimate.
- Combo Chain: Basic → Skill 1 → Skill 2 in order multiplies damage (x1.0 / x1.2 / x1.5) and refunds +50 Gauge on the finisher. Breaking the order resets the chain.
- Gauge & Overcharge: Hits and hits taken charge a 0–150 Gauge. Ultimate unlocks at 100 (x2.0) and scales up to x3.0 at 150. Firing it empties the Gauge.
- Squad Tactics (3v3): Pick three Pokemon; one fights while two wait on the bench. Switching costs a turn, fainting forces a switch.
- Adaptive Difficulty: Wild Pokemon use a "Stat Clamping" system in the early game to ensure a fair fight, but unleash their full potential after Level 12.
- Custom Scaling: Stats are recalculated from base stats each level (~2% compound + flat HP). EXP scales with the level gap; bench members earn 50% of every KO.
By using Pokegames you can:
- Get all list pokemon.
- Catch a pokemon and bring it to inventory.
- Animation pokeball when catching the pokemon.
- Give nickname to a pokemon.
- Release a pokemon.
- Battle System: Turn-based combat with Wild Pokemon.
- Leveling System: Gain EXP and Level Up to increase stats.
- Damage System: Critical hits, Miss chance, and Super Effective multipliers.
- Squad Tactics (3vs3 Team Match): Pick a team of three, switch mid-battle, shared EXP.
- Pokemon Status Information: Level, EXP, stats and full action set from the Pokedex.
UPCOMING FEATURES (Roadmap)
- Multiplayer PvP: Real-time online battles with other players.
- Online Account & Cloud Save.
Pokegames is created using:
- Typescript - TypeScript is JavaScript with syntax for types.
- React - React a JavaScript library for building user interfaces.
- Vite - Next Generation Frontend Tooling.
- Emotion - Emotion is a library designed for writing css styles with JavaScript.
- Vercel - Vercel is a cloud platform that we use to deploy our apps.
- Node JS 20 or later
- Typescript v5 or later
git clone https://github.com/radespratama/pokegames.git pokegames
cd pokegames
# Install deps
yarn || npm install
# Copy Pokemon API in .env file
# You can visit https://pokeapi.co
VITE_POKEMON_API= <API URL HERE>
VITE_POKEMON_IMAGE=https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/pokemon/
VITE_POKEMON_TYPE_ICON=https://raw.githubusercontent.com/duiker101/pokemon-type-svg-icons/master/iconsyarn dev || npm run devContributions 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
- @kuronekony4n [#15] img blurred (heres how to fix it)
