# Legacy Routes Inventory Source analyzed: routes/legacy.php Date: 2026-03-12 This list includes active (non-commented) routes still defined in the legacy compatibility layer. Companion execution guide: [docs/legacy-routes-removal-checklist.md](docs/legacy-routes-removal-checklist.md) ## Avatar and Artwork | Method | Path | Route Name | Handler / Target | | --- | --- | --- | --- | | GET | /avatar/{id}/{name?} | legacy.avatar | LegacyAvatarController@show | | GET, POST | /art/{id}/comment | - | ArtController@show | ## Categories and Browse | Method | Path | Route Name | Handler / Target | | --- | --- | --- | --- | | GET | /sections | sections | 301 -> /categories | | GET | /browse-categories | browse.categories | 301 -> /categories | | GET | /{group}/{slug}/{id} | legacy.category.short | CategoryRedirectController | | GET | /category/{group}/{slug?}/{id?} | legacy.category | CategoryRedirectController | | GET | /browse | legacy.browse | 301 -> /explore | | GET | /featured-artworks | legacy.featured_artworks | 301 -> /featured | | GET | /daily-uploads | legacy.daily_uploads | 301 -> /uploads/daily | ## Community and Listings | Method | Path | Route Name | Handler / Target | | --- | --- | --- | --- | | GET, POST | /chat | - | 301 -> /messages | | GET, POST | /community/chat | community.chat | 301 -> /messages | | GET | /latest | legacy.latest | 301 -> /uploads/latest | | GET | /authors/top | authors.top | 301 -> /creators/top | | GET | /latest-artworks | legacy.latest_artworks | 301 -> /discover/fresh | | GET | /latest-comments | legacy.latest_comments | 301 -> /community/activity | | GET | /comments/latest | comments.latest | 301 -> /community/activity | | GET | /today-in-history | legacy.today_in_history | 301 -> /discover/on-this-day | | GET | /today-downloads | legacy.today_downloads | 301 -> /downloads/today | | GET | /monthly-commentators | legacy.monthly_commentators | 301 -> /comments/monthly | | GET | /members | legacy.members | 301 -> /creators/top | | GET | /top-favourites | legacy.top_favourites | 301 -> /discover/top-rated | ## Legacy Redirect Endpoints | Method | Path | Route Name | Handler / Target | | --- | --- | --- | --- | | GET | /top-authors | legacy.top_authors | 301 -> /creators/top | | GET | /interviews | legacy.interviews | 301 -> /stories | | GET | /apply | legacy.apply.redirect | 301 -> /contact | | GET, POST | /bug-report | bug-report.redirect | 301 -> /contact | ## Auth-Only Legacy Routes | Method | Path | Route Name | Handler / Target | | --- | --- | --- | --- | | GET | /mybuddies.php | legacy.mybuddies.php | 301 -> dashboard.following | | GET | /mybuddies | legacy.mybuddies | 301 -> dashboard.following | | DELETE | /mybuddies/{id} | legacy.mybuddies.delete | 302 -> dashboard.following | | GET | /buddies.php | legacy.buddies.php | 301 -> dashboard.followers | | GET | /buddies | legacy.buddies | 301 -> dashboard.followers | | GET | /statistics | legacy.statistics | StatisticsController@index | | GET, POST | /user | legacy.user.redirect | 301 -> dashboard.profile | | GET | /recieved-comments | legacy.received_comments | 301 -> dashboard.comments.received | | GET | /received-comments | legacy.received_comments.corrected | 301 -> dashboard.comments.received | ## Favourites, Gallery, and Profile Legacy URLs | Method | Path | Route Name | Handler / Target | | --- | --- | --- | --- | | GET | /favourites/{id?}/{username?} | legacy.favourites | FavouritesController@index | | POST | /favourites/{userId}/delete/{artworkId} | legacy.favourites.delete | FavouritesController@destroy | | GET | /gallery/{id}/{username?} | legacy.gallery | 301 -> /@username/gallery via GalleryController | | GET | /user/{username} | legacy.user.profile | ProfileController@legacyByUsername | | GET | /profile/{id}/{username?} | legacy.profile.id | ProfileController@legacyById | | GET | /profile/{username} | legacy.profile | ProfileController@legacyByUsername | ## Legacy RSS Feed URLs | Method | Path | Route Name | Handler / Target | | --- | --- | --- | --- | | GET | /rss/latest-uploads.xml | rss.uploads | RssFeedController@latestUploads | | GET | /rss/latest-skins.xml | rss.skins | RssFeedController@latestSkins | | GET | /rss/latest-wallpapers.xml | rss.wallpapers | RssFeedController@latestWallpapers | | GET | /rss/latest-photos.xml | rss.photos | RssFeedController@latestPhotos | ## Notes - Commented-out legacy blocks (manage pages, received-comments, forum.php redirect) are excluded from this active inventory. - Several routes are already transitional redirects; these are good early candidates for removal once logs show no meaningful traffic. ## Deprecation Priority ### Phase 1: Safe To Remove First (redirect-only) These routes already do permanent redirects and typically carry the lowest removal risk once access logs confirm near-zero traffic. - /top-authors - /interviews - /apply - /bug-report - /browse-redirect - /wallpapers-redirect ### Phase 2: Low-Risk Alias Pairs (keep canonical, remove duplicates) For each pair, keep the cleaner canonical URL and remove the older alias after monitoring. - Keep /featured-artworks, remove /featured (or vice versa; pick one canonical) - Keep /uploads/latest, remove /latest - Keep /comments/latest, remove /latest-comments - Keep /downloads/today, remove /today-downloads - Keep /comments/monthly, remove /monthly-commentators ### Phase 3: Needs Migration Plan (controller-backed legacy behavior) These endpoints are not simple redirects and may have old templates, old query semantics, or SEO dependencies. - /browse - /category/{group}/{slug?}/{id?} - /browse-categories - /daily-uploads - /members - /members/photos - /authors/top - /top-favourites - /chat - /chat_post - /favourites/{id?}/{username?} - /favourites/{userId}/delete/{artworkId} ### Phase 4: Legacy Profile URL Surface (requires 301 mapping checks) These should eventually collapse to canonical @username/profile routes, but require careful redirect and username-edge-case validation. - /user/{username} - /profile/{id}/{username?} - /profile/{username} - /user ### Phase 5: Keep For Compatibility (unless external consumers are migrated) These are frequently consumed by feed readers or old clients and should be retired only with explicit migration communication. - /rss/latest-uploads.xml - /rss/latest-skins.xml - /rss/latest-wallpapers.xml - /rss/latest-photos.xml ### Special Case: Auth-only legacy utility pages Evaluate usage with auth logs before deprecating. They are likely niche but can still be bookmarked by long-time users. - /mybuddies.php - /mybuddies - /mybuddies/{id} - /buddies.php - /buddies - /statistics