Découvrir v2 : rails par type, exploration par genre

- Rails Nouveautés séparés : 🆕 animés (tri date Kitsu) et 🆕 séries & films
  (French-Stream) — chaque type garde son rail, plus d'écrasement mutuel
- Section 🎭 Explorer : chips type × genre — animés via catégories Kitsu,
  séries (/<genre>-series-/) et films (/films/<genre>/) via French-Stream ;
  état dans l'URL (/discover?t=serie&g=medical), partageable
- Scraper : browse(media_type, genre) + catalogue YAML surchargeable ;
  parsing div.short mutualisé avec les nouveautés
- Films réels retirés du mode « Animés » (ils suivent le rail séries)
- Endpoints /api/discover (latest_anime/latest_serie), /api/discover/genres,
  /api/discover/browse — parcours filtré par la préférence du compte
- Warmup démarrage : latest_by_type()
This commit is contained in:
Roman
2026-09-25 14:48:29 +00:00
parent 248ec60d35
commit d747c574b8
12 changed files with 526 additions and 84 deletions
+18
View File
@@ -552,6 +552,24 @@ button { font-family: inherit; }
.rail-section { margin-bottom: 2.4rem; animation: rise 0.5s ease backwards; }
/* ------------------------------------------------------------- Explorer */
.explore-section { animation-delay: 0s; }
.explore-filters { display: flex; flex-direction: column; gap: 0.5rem; margin-bottom: 1rem; }
.chip-row { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.genre-chip {
background: var(--surface); color: var(--text-dim);
border: 1px solid var(--border); border-radius: 99px;
font: inherit; font-size: 0.82rem; font-weight: 600;
padding: 0.32rem 0.85rem; cursor: pointer;
transition: color 0.15s, border-color 0.15s, background 0.15s;
}
.genre-chip:hover { color: var(--text); border-color: var(--accent); }
.genre-chip.active {
background: var(--accent); border-color: var(--accent); color: #fff;
}
.explore-skel .rail-skel { margin-top: 0.2rem; }
.rail-title {
font-size: 1.15rem;
font-weight: 700;