refactor: retire redirected course readers without changing legacy URLs

Ouverte
#73 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
48/100
Type d'issue
Refactorisation
Clarté
Clairement spécifiée
Activité
Active
Stack technique
next.js, react, typescript

Piste de recherche

Start by tracing imports from src/app/courses/ and the reader components, then check next.config.ts and the protection helpers to distinguish retired code from shared code. Use e2e/checks.mjs and the reader and redirect browser checks to verify legacy URLs preserve nested paths and query strings, render the dashboard destination, and keep unknown destinations at 404. Done when only unreferenced legacy components are removed, architecture guidance names the canonical reader, and the listed checks pass.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

enhancement help wanted

Problem

next.config.ts permanently redirects /courses and /courses/:path* to /dashboard, but the repository retains a second course-reader route tree and its reader components. This makes it harder for contributors to identify the active implementation.

Scope

  • Inventory the legacy route/component import graph and confirm which files are unreachable through the supported application routes.
  • Remove only duplicate pages/components whose sole consumers belong to that retired tree.
  • Preserve the existing permanent redirects, path segments and query strings.
  • Keep the active dashboard reader, content safety rules and any shared helpers still used elsewhere.
  • Update architecture guidance to identify the canonical reader.
  • Treat this as dead-code cleanup; it does not fix an active reading restriction or change the student reading experience.

Starting files

next.config.ts, src/app/courses/, src/app/components/Reader/, src/app/components/Protected/NoCopyWrapper.tsx, src/hooks/useContentProtection.ts, e2e/checks.mjs and docs/architecture.md.

Done when

Tests verify direct legacy requests redirect to the matching dashboard URL, including nested unit paths and query strings. Browser checks confirm the destination renders the expected content and unknown destinations still return 404. Lint, typecheck, unit tests, production build and reader/redirect browser checks pass. Removed components have no remaining consumers.

Langage dominant
TypeScript
Étoiles
1
Forks
1
Merge moyen
8 h 58 min
PR mergées (30 j)
37

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de procoderji-com/procoderji

Toutes les issues de procoderji-com/procoderji

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.