Reborn Pokepedia allows players to filter for Pokemon that are available based on their progress in game. It will show all wild, event, and gift Pokemon that can be obtained at a given point in the game, and details what moves, tutors, and TM/HM are available to them.
This application is available on web, iOS, and Android.
Available for Android.
Android: https://play.google.com/store/apps/details?id=com.brentspector.rebornpokepedia
While there is an iOS app available in this codebase, the actual distribution to the App Store is too expensive. If you are interested in the iOS app, follow these instructions.
The app to load in XCode can be found at ios/App/App.xcworkspace
You will likely need NodeJS and npm, Ionic CLI, and cordova-res to collect the node modules and build artifacts that Capacitor relies on in order to properly build the iOS app.
Once that's taken care of, run scripts/ios_build.sh
to create the build artifacts that XCode will use to make the .ipa
file that gets installed on Apple devices.
This app has been tested on Monterey 12.1
and Xcode 13.2.1
and various virtual devices, including iPhone 13
.
A few of the things you can do with Reborn Pokepedia:
- Look up Pokemon by major battle (Gym, Rival, PULSE, or Major NPC)
- Look up Pokemon by location
- Look up details for individual Pokemon
Feel free to send us feedback by Email or file an issue. Feature requests are always welcome, although not guaranteed to be fulfilled. If you wish to contribute, please submit a pull request.
- Follow the Ionic Guide for getting started building the project. A Mac is required if you wish to develop for iOS.
- Clone or download the repo
npm install
to install dependenciesionic serve
to spin up the web-appionic capacitor open ios
requires appropriate setup in a Mac Environmentionic capacitor open andriod
requires appropriate setup with Android Studio
Any commit to the master
branch triggers a Github Action that rebuilds the project and updates https://brentspector.github.io/reborn-pokepedia/.
However, if you wish to preview the production build locally, a Dockerfile has been created to do just that!
From the project root, run the following commands
scripts/docker_build.sh
scripts/docker_run.sh
Then navigate to localhost:8080
to see the product.
Vue.js recommends combining HTML, CSS, and Javascript into one file, represented with the .vue
file extension. More details on the rationale behind this can be found at https://v3.vuejs.org/guide/single-file-component.html#how-it-works
Data has been broken down into each generation, and some generations have been broken down into multiple portions. This is due to Babel (a compatibility library) deoptimizing files that exceed 500 kB. In order to keep build times short, files should be less than 500 kB if possible.
Point in Game
is defined as the point you have not crossed yet. For instance, If you beat Julia but have not gotten through Pulse Tangrowth 1, then your Point in Game
would be ZEL/Pulse Tangrowth 1
.
Points in game require the following criteria:
- Points of importance where player might get stuck and need to rework team
- 2 or more evolutionary lines are made available between any two consecutive points (i.e. if Zubat and Golbat are unlocked at the same time, it gets lumped with the next batch instead of getting a separate
Point in Game
)
Location in Game
require the following criteria:
- Unique in-game location (i.e location printed in
Trainer Memo
on Pokemon details screen) - Sufficiently relevant encounters
The initial pass attempts to lump as many similar areas together as possible (i.e Glitch World
) even if they may have different Trainer Memo
locations. This can be adjusted later if requested.
Some Pokemon (like Alolan Raichu
or Mega Venusaur
) were given a location even though you can't find them in the wild. This was done when an evolution is available based on a location or item that is not available until after the earliest time to obtain. Thus Clefable
is listed as having no locations since the Moon Stone
is available prior to the point you get Clefairy
. NOTE: Random potential events like Mystery Egg are not considered "earliest".
Run npm run commit
to automatically use Commitizen
.
Thanks to Amethyst
for the great game!
Support her work on Patreon
- Thanks to PokeAPI for the sprites on GitHub
- Thanks to AlphaXXI for the Floette Eternal Flower form art
- Thanks to Starry Knight for E18 Pokemon Locations
- Thanks to Aegisth for E18 Pokemon Spreadsheet
- Thanks to Aboodie for E18 Item Guide
- Thanks to AyTales for E19 Pokemon Spreadsheet
- Thanks to Ngoc Nguyen for E19 Move Tutors
- Thanks to Bradley Mc-Avoy-James for the Pokemon type sprites
- Thanks to James Shvarts for the Android CICD