About the website

This is a not the Pokémon Database code and is just a fan who wants to create their own "improved" version written completely from scratch.

Why make this website?

I really love Pokémon Database however there are small things about the site that i don't like, so instead of putting up with the minor annoyances I thought it would be fun to write my own version.

I'd already written a Pokédex website with the main goal being generation specific tweaks depending on the one you want, and no JS. I think JS is overused on the internet and wanted to see what I could make without it.

Here is a list of the main tweaks I wanted to make with this website compared to Pokémon Database:

Software and tools used

Here is a list of the tools used:

The core of the site is the Axum web framework and Askama for templating, besides that most of the other things are for small features.
Here is the .toml file for the project if you are interested:

[
dependencies
]
anyhow
=
"1.0.86"
askama
=
"0.12.1"
axum
=
"0.7.5"
hyper
= {
version
=
"1.4.1"
,
features
=
[
"full"
]
}
tokio
= {
version
=
"1.39.3"
,
features
=
[
"full"
]
}
tower
=
"0.5.0"
tower-http
= {
version
=
"0.5.2"
,
features
=
[
"fs"
]
}
tracing
=
"0.1.40"
serde
= {
version
=
"1.0.210"
,
features
=
[
"derive"
]
}
rusqlite
= {
version
=
"0.32.0"
,
features
=
[
"bundled"
]
}
chrono
=
"0.4.38"
titlecase
=
"3.3.0"
serde_json
=
"1.0.128"
hyper-util
= {
version
=
"0.1.9"
,
features
=
[
"client-legacy"
]
}
rss
=
"2.0.9"
reqwest
=
"0.12.7"
futures
=
"0.3.30"
num-format
=
"0.4.4"

Data

The data for this website is almost entirely from the PokeAPI project, however the data about changes that pokemon have had isn't stored on that database so I've written a web scraper that pulls that info from the Pokémon Database page for the pokemon then writes it to a JSON file that is read.