The TriviaPP wiki is a companion feature that lets players explore the Star Wars universe between trivia sessions. It is organized into three sections — Characters, Films, and Planets — each backed by live data from the Star Wars API (SWAPI). Alongside the raw API data, the wiki layers in curated curiosities, translated text, and visual assets so that browsing feels like reading an in-universe guide rather than a raw data dump.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/dreancaste/TriviaPP/llms.txt
Use this file to discover all available pages before exploring further.
Wiki Sections
Personajes
Heroes, villains, and key figures from the saga. Powered by SWAPI
/people page 1.Películas
All saga episodes with director, release date, and curated episode curiosities.
Planetas
Worlds from SWAPI
/planets page 1, with climate and terrain translated to Spanish.Characters
CharactersPage loads page 1 of SWAPI /people on ngOnInit and renders each character as a tappable card. Each card shows the character’s name and homeworld. Tapping a card navigates to /wiki/detail/characters/:id, where the full detail view displays all SWAPI character stats.
The character’s ID is extracted from the SWAPI resource URL by splitting on / and taking the last non-empty segment. Visual guide images are resolved per character UID through WikiContentService.getVisualGuideImage("characters", uid).
Films
FilmsPage loads all SWAPI films from /films on ngOnInit. Each film card shows:
- Title and episode number
- Director
- Release date
/wiki/detail/films/:id. The wiki also includes hand-written curiosities for every episode, surfaced on the detail screen. Examples of curated curiosities per episode:
| Episode | Sample Curiosity |
|---|---|
| IV — A New Hope | ”A New Hope presenta por primera vez la lucha central entre la Rebelion y el Imperio.” |
| V — The Empire Strikes Back | ”La revelacion final cambia por completo la relacion entre Luke y Darth Vader.” |
| VI — Return of the Jedi | ”Luke enfrenta al Emperador sin abandonar su confianza en el lado luminoso.” |
| I — The Phantom Menace | ”Darth Maul revela que los Sith siguen activos despues de siglos de aparente silencio.” |
| II — Attack of the Clones | ”La relacion entre Anakin y Padme se vuelve un eje emocional de la trilogia de precuelas.” |
| III — Revenge of the Sith | ”La Orden 66 convierte a los clones en el arma que destruye casi por completo a los Jedi.” |
Planets
PlanetsPage loads page 1 of SWAPI /planets on ngOnInit. For each planet it immediately translates climate and terrain from English to Spanish via WikiContentService.translateValues(), which calls the MyMemory API under the hood. The translated values are stored as climateEs and terrainEs on the enriched planet object displayed in the list.
Tapping a planet navigates to /wiki/detail/planets/:id, where the full planetary stats are shown.
Tatooine (planet ID 1) is the most richly configured planet in the wiki — it ships with 7 gallery images and both a desktop and a mobile version of its map:
| Asset | Path |
|---|---|
| Gallery image 1 | assets/icons/tatooine.jpg |
| Gallery image 2 | assets/icons/tatooine2.jpg |
| … through image 7 | assets/icons/tatooine7.jpg |
| Desktop map | assets/icons/MapaTatooine.png |
| Mobile map | assets/icons/MapaTatooineMovil.png |
Data Sources
| Source | URL | Used for |
|---|---|---|
| SWAPI | https://swapi.py4e.com/api | Characters, films, planets |
| MyMemory API | (via TranslationService) | EN → ES translation of planet climate and terrain |
WikiSectionConfig Interface
The three wiki sections are defined using theWikiSectionConfig interface from src/app/data/wiki-content.ts:
WikiEntityType is a union type: "characters" | "films" | "planets". The three concrete section configs are exported as the WIKI_SECTIONS constant array and consumed by WikiContentService to populate the wiki home page.