This is a modern, mobile optimized web application that hosts a searchable and sortable database of all the enemies in the Xenosaga PS2 series. Every enemy has detailed stats, weaknesses, loot drops, etc.
Each game has been split into its own separate table/tab for organization.
This website's frontend uses a mix of:
- Dash Open Source for the layout and HTML structures.
- Dash AG-Grid for the grid/table.
Each column in the grid can be resized, filtered, and sorted as you'd like.
Clicking anywhere on a row will make a modal pop up that contains that selected enemy's stats.
The data comes from the following sources, which I extracted using BeautifulSoup 4 and regex (except for Episode 2, which I had to do manually):
- Episode 1 https://gamefaqs.gamespot.com/ps2/519264-xenosaga-episode-i-der-wille-zur-macht/faqs/22927
- Episode 2 https://www.ign.com/articles/2005/04/06/xenosaga-episode-ii-jenseits-von-gut-und-bose-enemy-faq-545281
- Episode 3 https://gamefaqs.gamespot.com/ps2/929933-xenosaga-episode-iii-also-sprach-zarathustra/faqs/45192
I used ChatGPT to craft the regexes for me.
docker pull strayingfromthepath:xenosaga
docker run xenosaga
git clone https://github.com/perfectly-preserved-pie/xenosaga.git
pip install -r requirements.txt
gunicorn -b 0.0.0.0:80 --workers=4 --preload app:server