# Third-party notices The source code of this project is released under the [MIT License](LICENSE). This file lists the third-party works it builds on, what each one contributes and under which terms. None of the third-party **artwork** below is part of this repository or of the published Docker image. A running instance downloads or links it at runtime, as described per entry. Pokémon and all related names, characters and artwork are trademarks and © of Nintendo, Creatures Inc., GAME FREAK inc. and The Pokémon Company. This is an unofficial, non-commercial fan project and is not affiliated with or endorsed by any of them. The MIT License of this project does not extend to any of that material. ## Data ### PokéAPI - **What:** species, base stats, types, evolutions, catch rates, weights, moves, learnsets, TM/HM/tutor compatibility and localized names in `data/`, plus the localized place names in `data/shared/location-names.json` (`scripts/generate-location-names.mjs`). Generated by the `scripts/generate-*.mjs` / `download-*.mjs` scripts from the [PokéAPI](https://pokeapi.co/) REST API. - **License:** BSD 3-Clause. ``` Copyright (c) © 2013–2023 Paul Hallett and PokéAPI contributors (https://github.com/PokeAPI/pokeapi#contributing). Pokémon and Pokémon character names are trademarks of Nintendo. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of PokéAPI nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ``` ### fbosch/infinite-fusion-nuzlocke - **What:** the Infinite Fusion game packs, generated from this project's data by `scripts/generate-infinite-fusion-packs.mjs`: - the species list `data/games/infinite-fusion-*/species.json`; - the location and encounter lists behind `data/games/infinite-fusion-*/routes.json`. - **Code:** the fusion typing rules in `src/lib/fusion.ts` are ported from its `src/lib/typings.ts`, tests included. - **Source:** [github.com/fbosch/infinite-fusion-nuzlocke](https://github.com/fbosch/infinite-fusion-nuzlocke) - **License:** MIT. ``` MIT License Copyright (c) 2025 Frederik Bosch Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ``` ### nuzlocke.app (domtronn/nuzlocke.app, fork Bassel-T/nuzlocke.app) - **What:** the ROM-hack game packs, generated by `scripts/import-nuzlocke-app.mjs` from the fork's generated data (`src/lib/data/routes.json`, `league.json`, `patches.json`) at commit `2b4f2ec`: - route lists and boss fights (`data/games//routes.json`, `levelcaps.json`); the level caps are the highest level in each boss's team; - the hacks' stat and type changes (`data/shared/-species.json`) and move changes (`data/games//move-overrides.json`); - the hacks' own Pokémon (`data/fakemon.json`): names, types, base stats and evolution lines only. Their sprites are not used: nuzlocke.app serves them from its own image host, which does not allow use by other sites. - **Packs:** Renegade Platinum, Sacred Gold, Storm Silver, Blaze Black, Volt White, Blaze Black 2 / Volt White 2 Redux, Emerald Kaizo, Inclement Emerald, Rising Ruby, Sinking Sapphire, Glazed, New Generations, Radical Red, Unbound, Run & Bun, Blazing Emerald. - **Source:** [github.com/Bassel-T/nuzlocke.app](https://github.com/Bassel-T/nuzlocke.app), a fork of [github.com/domtronn/nuzlocke.app](https://github.com/domtronn/nuzlocke.app). - **License:** BSD 3-Clause. Neither project nor its contributors endorse this project. ``` BSD 3-Clause License Copyright (c) 2021, Diego Ballesteros All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ``` ### Pokémon Infinite Fusion (infinitefusion/infinitefusion-e18) - **What:** the fan game's own values, read from the compiled data files of its public project repository, version 6.2.4, by the `scripts/generate-infinite-fusion-*.mjs` scripts. These are: - species stats, types, catch rates and weights (`data/shared/infinite-fusion-species.json`); - move lists, TM/HM and tutor compatibility; - trainer levels for the level caps. - **Mechanics:** the capture formula and the ball list in `src/lib/catchrate.ts` are reimplemented from its Ruby scripts. - **Ball icons:** the game's own ball icons are downloaded from that repository when a container starts. They are never stored in this repository. - **Source:** [github.com/infinitefusion/infinitefusion-e18](https://github.com/infinitefusion/infinitefusion-e18) - **License:** the repository does not state one. Only factual game values are used, and the project is credited in the app's menu while an Infinite Fusion run is open. ### Reference wikis - **[PokéWiki](https://www.pokewiki.de/):** source for the German move names that changed between generations (`data/move-name-history.json`), and for the gym badges' official names in all five languages that no older pack carried (Kalos, Galar, Paldea and a few Hoenn and Unova badges; `data/shared/badge-names.json`, `scripts/generate-badge-names.mjs`), and for the official place names of every official game in all five languages (`data/shared/place-names.json`, `scripts/generate-place-names.mjs`; the hand-made `data/shared/place-name-overrides.json` cites the pages it used), read from the "In anderen Sprachen" table of each page - facts, no text copied. - **[Bulbapedia](https://bulbapedia.bulbagarden.net/):** reference for the per-generation capture formulas and ball quirks in `src/lib/catchrate.ts`, and for verifying the historical base-stat corrections. The boss trainers' official names in German, French, Spanish and Italian for the packs imported from nuzlocke.app (`data/shared/trainer-names.json`, `scripts/generate-trainer-names.mjs`) are read from the "Names" tables of its character pages - facts, no text copied. - **[pokemon-infinite-fusion.com](https://pokemon-infinite-fusion.com/):** used to check the Infinite Fusion gym leader levels. - **[Infinite Fusion wiki](https://infinitefusion.fandom.com/):** used to check routes and locations. All four were consulted for facts (names, numbers); no text or images were copied. ## Artwork loaded at runtime (never shipped) | Source | Used for | How it reaches an instance | Terms | | --- | --- | --- | --- | | [PokeAPI/sprites](https://github.com/PokeAPI/sprites) | Pokémon and Poké Ball sprites | Downloaded by `scripts/download-sprites.mjs` on first start (self-hosted) or linked directly (public instance, only after the visitor agrees) | Repository CC0 1.0; *"All image contents within are Copyright The Pokémon Company."* | | [SteGriff/pokemon-badges](https://github.com/SteGriff/pokemon-badges) | Gym badge icons | Downloaded by `scripts/download-badges.mjs`, which **crops the individual badges out of the project's composite sheet** (`badges.png`) | "Pokémon League Badges" by Stephen Griffiths, 2011, licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/). Changed: cropped into one image per badge. | | Infinite Fusion sprite community | Fusion sprites | Loaded by the browser straight from the community's sprite server, never stored | Credited in the app's menu during an Infinite Fusion run | | [libretro-thumbnails](https://github.com/libretro-thumbnails) | Game covers (box art) of the official games and of Glazed | Self-hosted: downloaded once by `scripts/download-covers.mjs` onto the user's own machine and scaled down (never into the repo or image, never over the user's own files, off with `COVERS=off`); map in `data/cover-sources.json`. Public instance: linked after the visitor agrees | Box art © Nintendo / Creatures Inc. / GAME FREAK inc. / The Pokémon Company, or the hack's authors; collected by the libretro project | | [Wikipedia](https://en.wikipedia.org/) | Covers of Sword/Shield, Brilliant Diamond/Shining Pearl and Scarlet/Violet (the infobox image of each article) | As above, via `upload.wikimedia.org` | Non-free images © Nintendo / Creatures Inc. / GAME FREAK inc. / The Pokémon Company, hosted by Wikipedia under its non-free content policy | | [Pokémon Showdown](https://play.pokemonshowdown.com/) | Boss trainer pictures | Self-hosted: downloaded once by `scripts/download-trainers.mjs` onto the user's own machine (never into the repo or image, never over the user's own files, off with `TRAINER_SPRITES=off`). Public instance: linked after the visitor agrees | © Nintendo / Creatures Inc. / GAME FREAK inc. / The Pokémon Company; hosted by Pokémon Showdown | ## Bundled with the Windows app | Component | Used for | License | | --- | --- | --- | | [Node.js](https://nodejs.org/) (`node ode.exe`) | Runs the server | MIT, plus the licenses of the components Node.js bundles; the full text ships as `node\LICENSE` | | [Inno Setup](https://jrsoftware.org/isinfo.php) | Builds the installer (not part of the installed files) | Inno Setup License | The npm packages under `app ode_modules` are the same runtime dependencies the Docker image ships; their licenses come with each package (see below). ## Font [Familjen Grotesk](https://github.com/Familjen-Sthlm/Familjen-Grotesk) by Familjen STHLM and [Red Hat Mono](https://github.com/RedHatOfficial/RedHatFont) by Red Hat, both under the SIL Open Font License 1.1. Loaded through `next/font` at build time. ## npm packages The runtime and build dependencies listed in `package.json` keep their own licenses, which ship with each package in `node_modules`. They include: - **MIT:** Next.js, React, react-markdown, next-themes, fflate, Tailwind CSS, libSQL client, Vitest, ESLint, @hyrious/marshal. - **Apache-2.0:** Prisma, sharp (its prebuilt libvips binaries are LGPL-3.0), TypeScript. - **BSD-2-Clause:** dotenv.