name('home'); Route::get('/tools', [ToolController::class, 'index'])->name('tools.index'); Route::get('/tools/list', [ToolController::class, 'list'])->name('tools.list'); Route::get('/tools/category/{slug}', [ToolController::class, 'byCategory'])->name('tools.by-category'); Route::get('/tools/{slug}', [ToolController::class, 'show'])->name('tools.show'); Route::get('/models', [ModelController::class, 'index'])->name('models.index'); Route::get('/models/use-case/{slug}', [ModelController::class, 'byUseCase'])->name('models.by-use-case'); Route::get('/models/{slug}', [ModelController::class, 'show'])->name('models.show'); Route::get('/news', [NewsController::class, 'index'])->name('news.index'); Route::get('/news/{slug}', [NewsController::class, 'show'])->name('news.show'); Route::get('/guides', [GuideController::class, 'index'])->name('guides.index'); Route::get('/guides/topic/{slug}', [GuideController::class, 'byTopic'])->name('guides.by-topic'); Route::get('/guides/{slug}', [GuideController::class, 'show'])->name('guides.show'); Route::post('/feedback', [FeedbackController::class, 'store'])->name('feedback.store'); Route::get('/robots.txt', [SeoController::class, 'robots'])->name('seo.robots'); Route::get('/sitemap.xml', [SeoController::class, 'sitemap'])->name('seo.sitemap'); Route::prefix('admin')->name('admin.')->group(function (): void { Route::middleware('admin.guest')->group(function (): void { Route::get('/login', [AdminAuthController::class, 'showLogin'])->name('login'); Route::post('/login', [AdminAuthController::class, 'login'])->name('login.submit'); }); Route::get('/captcha', [AdminAuthController::class, 'captcha'])->name('captcha'); Route::middleware('admin.auth')->group(function (): void { Route::post('/logout', [AdminAuthController::class, 'logout'])->name('logout'); Route::post('/uploads/markdown-image', [AdminUploadController::class, 'markdownImage'])->name('uploads.markdown-image'); Route::get('/', DashboardController::class)->name('dashboard'); Route::get('/tools', [AdminToolController::class, 'index'])->name('tools.index'); Route::get('/tools/create', [AdminToolController::class, 'create'])->name('tools.create'); Route::post('/tools', [AdminToolController::class, 'store'])->name('tools.store'); Route::get('/tools/{tool}/edit', [AdminToolController::class, 'edit'])->name('tools.edit'); Route::put('/tools/{tool}', [AdminToolController::class, 'update'])->name('tools.update'); Route::post('/tools/{tool}/publish', [AdminToolController::class, 'publish'])->name('tools.publish'); Route::post('/tools/{tool}/mark-stale', [AdminToolController::class, 'markStale'])->name('tools.mark-stale'); Route::get('/models', [AdminAiModelController::class, 'index'])->name('models.index'); Route::get('/models/create', [AdminAiModelController::class, 'create'])->name('models.create'); Route::post('/models', [AdminAiModelController::class, 'store'])->name('models.store'); Route::get('/models/{model}/edit', [AdminAiModelController::class, 'edit'])->name('models.edit'); Route::put('/models/{model}', [AdminAiModelController::class, 'update'])->name('models.update'); Route::post('/models/{model}/publish', [AdminAiModelController::class, 'publish'])->name('models.publish'); Route::post('/models/{model}/mark-stale', [AdminAiModelController::class, 'markStale'])->name('models.mark-stale'); Route::get('/articles', [AdminArticleController::class, 'index'])->name('articles.index'); Route::get('/articles/create', [AdminArticleController::class, 'create'])->name('articles.create'); Route::post('/articles', [AdminArticleController::class, 'store'])->name('articles.store'); Route::get('/articles/{article}/edit', [AdminArticleController::class, 'edit'])->name('articles.edit'); Route::put('/articles/{article}', [AdminArticleController::class, 'update'])->name('articles.update'); Route::post('/articles/{article}/publish', [AdminArticleController::class, 'publish'])->name('articles.publish'); Route::post('/articles/{article}/mark-stale', [AdminArticleController::class, 'markStale'])->name('articles.mark-stale'); Route::get('/guides', [AdminGuideController::class, 'index'])->name('guides.index'); Route::get('/guides/create', [AdminGuideController::class, 'create'])->name('guides.create'); Route::post('/guides', [AdminGuideController::class, 'store'])->name('guides.store'); Route::get('/guides/{guide}/edit', [AdminGuideController::class, 'edit'])->name('guides.edit'); Route::put('/guides/{guide}', [AdminGuideController::class, 'update'])->name('guides.update'); Route::post('/guides/{guide}/publish', [AdminGuideController::class, 'publish'])->name('guides.publish'); Route::get('/categories', [AdminCategoryController::class, 'index'])->name('categories.index'); Route::get('/categories/create', [AdminCategoryController::class, 'create'])->name('categories.create'); Route::post('/categories', [AdminCategoryController::class, 'store'])->name('categories.store'); Route::get('/categories/{category}/edit', [AdminCategoryController::class, 'edit'])->name('categories.edit'); Route::put('/categories/{category}', [AdminCategoryController::class, 'update'])->name('categories.update'); Route::get('/sources', [AdminSourceController::class, 'index'])->name('sources.index'); Route::get('/sources/create', [AdminSourceController::class, 'create'])->name('sources.create'); Route::post('/sources', [AdminSourceController::class, 'store'])->name('sources.store'); Route::get('/sources/{source}/edit', [AdminSourceController::class, 'edit'])->name('sources.edit'); Route::put('/sources/{source}', [AdminSourceController::class, 'update'])->name('sources.update'); Route::get('/settings', [AdminSiteSettingController::class, 'index'])->name('settings.index'); Route::put('/settings', [AdminSiteSettingController::class, 'update'])->name('settings.update'); Route::get('/feedback', [AdminFeedbackController::class, 'index'])->name('feedback.index'); Route::put('/feedback/{feedback}', [AdminFeedbackController::class, 'updateStatus'])->name('feedback.status'); }); });