DEV Community

Valley
Valley

Posted on • Updated on

Pokémouille - A modern Pokédex (part 1)

I am a big fan of Pokémon games, grew up with them, and still love them at 21. However, I've always found the available resources lacking in one way or another. Smogon's Pokedex offers easy accessibility but has an awful-looking UI, while Bulbapedia provides a vast amount of information but is difficult to navigate quickly. This led me to believe that there is room for improvement, and that's when I discovered the PokeAPI API.

Help me pwease ;(

But before I dive into the details of Pokémouille, I want to mention that the project is open-source and available on Github under the MIT license. As a beginner, I'm actively seeking contributors and individuals who can help me make this project even better. If you're interested in contributing, please feel free to check out the project on Github and submit a pull request. I would greatly appreciate assistance with various aspects, especially UI and web design.

Caching With node-cache

The first challenge I tackled was implementing caching. Being a zoomer web dev, I sought advice from ChatGPT and realized the importance of caching. After conducting some research, I started working on it. I created a barebone SvelteKit project, added TailWind, and voila! I began displaying data on the page. Getting caching to work early on was crucial as it motivated me to accomplish more (Please note that caching doesn't work when hosted on Vercel https://pokemouille.vercel.app/ (start typing to see stuff happening, though I recommend localhosting the project instead), but it does work in localhost).

Why SvelteKit?

Simply put, I chose SvelteKit because I genuinely enjoy working with it. No jokes here.

Current features

  • Caching using node-cache
  • pokemon/pokemon-name endpoint that displays basic information
  • Code organization: I attempted to split the code into different JavaScript files, which can be found in the src/lib folder.

Conclusion

I have high hopes for this project and believe that sharing it somewhere can help me connect with coding partners and learn from them throughout the journey. Hopefully, this brief and poorly written post will catch the attention of generous veterans willing to invest some of their time in this project.

If you wish to contact me personally, here's my Discord: Valentin#9648

Top comments (0)