Can you name every Pokémon, given images? pokemon.katsuricata.com/
game javascript pokemon quiz svelte typescript pokedex
0

Configure Feed

Select the types of activity you want to include in your feed.

Svelte 70.5%
TypeScript 19.2%
CSS 3.8%
JavaScript 3.2%
HTML 1.7%
Shell 0.3%
Other 1.3%
13 1 0

Clone this repository

https://tangled.org/katsuricata.com/CYNEP https://tangled.org/did:plc:dasw5f4awopojiqjpdzaqb2b
git@tangled.org:katsuricata.com/CYNEP git@tangled.org:did:plc:dasw5f4awopojiqjpdzaqb2b

For self-hosted knots, clone URLs may differ based on your setup.



README.md

Can You Name Every Pokémon?#

A naming quiz for all 1,025 Pokémon. See a Pokémon, type the name. No timer, no hints.

Live: pokemon.katsuricata.com
Source: tangled.org/katsuricata.com/CYNEP

Features#

  • 1,025 Pokémon, one text box: Every generation and every Pokémon, from Bulbasaur to Pecharunt.
  • Pure image recall: You know it or you don't.
  • Forgiving input: Diacritics and non-alphanumeric characters are all flattened; "nidoran" is fine for both genders.
  • Warm claymorphic design: Built with a custom earth-and-parchment visual system that feels tactile and handcrafted.
  • Dark mode support: Automatic warm dark theme via prefers-color-scheme.
  • Accessibility-first: WCAG AA compliant, full keyboard navigation, reduced motion respected.
  • Progressive enhancement: The start button works even with JavaScript disabled.

Getting Started#

You need Node.js (version 20 or later) and pnpm.

# Clone the repo
git clone https://tangled.org/katsuricata.com/CYNEP.git
cd CYNEP

# Install dependencies
pnpm install

# Start the dev server
pnpm dev

Then open http://localhost:5173 in your browser.

Building for Production#

pnpm build

The app is built with @sveltejs/adapter-node, so the output is a self-contained Node server in the build/ directory. You can preview it locally with:

pnpm preview

Sprite Assets#

Pokémon sprite images are not included in this repository for copyright reasons. They are sourced from the excellent resource maintained by HybridShivam.

At build or deploy time, place the WebP sprite files in static/webp/ following the naming convention 0001.webp through 1025.webp.

The static/webp/ directory is gitignored and will not be tracked by version control.

Cloudron#

This project ships with ready-to-deploy Cloudron packaging. The static/webp/ directory must be locally present before building (see Sprite Assets above).

cloudron install

To update after changes:

cloudron update

The package consists of:

  • CloudronManifest.json — app metadata, port, and addon declarations
  • Dockerfile.cloudron — multi-stage build (Node 22 build → cloudron/base:5.0.0 runtime)
  • start.sh — entrypoint that drops privileges and starts the Node server

The app runs on port 8000 inside the container and requires no database or authentication addons — it's a fully stateless quiz.

Pokémon and all related names, characters, sprites, and other assets are trademarks and copyrights of GAME FREAK, Nintendo, Creatures Inc., and The Pokémon Company. All rights reserved.

This project is an independent, fan-made, non-commercial quiz created purely for fun and personal enjoyment. No copyright infringement is intended. This project makes no claim of ownership over any Pokémon names, images, or other intellectual property. It is not affiliated with, endorsed by, or sponsored by GAME FREAK, Nintendo, Creatures Inc., or The Pokémon Company.

This quiz is not a substitute for any official Pokémon game, application, or content. It is provided as-is, without warranties or guarantees of any kind.

License#

The original source code in this repository is licensed under the Apache License 2.0.

This license applies exclusively to the original code written for this project. It does not apply to, and does not grant any rights over, Pokémon names, images, sprites, or any other third-party assets or intellectual property used or referenced by this application. Those materials remain the property of their respective owners.