name('login'); Route::get('/', [BlogController::class, 'index'])->name('blog.index'); Route::get('/blog/feed.xml', [BlogController::class, 'feed'])->name('blog.feed'); Route::get('/sitemap.xml', [SitemapController::class, 'index'])->name('sitemap'); Route::get('/api-docs', [ApiDocsController::class, 'show'])->name('api.docs'); Route::get('/llms.txt', [ApiDocsController::class, 'llmsTxt'])->name('llms-txt'); Route::get('/category/{category:slug}', [BlogController::class, 'category'])->name('blog.category'); Route::get('/tag/{tag:slug}', [BlogController::class, 'tag'])->name('blog.tag'); Route::get('/blog/{post:slug}', [BlogController::class, 'show'])->name('blog.show'); Route::get('/tools', [ToolController::class, 'index'])->name('tools.index'); Route::get('/tools/category/{category}', [ToolController::class, 'category'])->name('tools.category'); Route::get('/tools/{tool:slug}/visit', [ToolController::class, 'visit'])->name('tools.visit'); Route::get('/tools/{tool:slug}', [ToolController::class, 'show'])->name('tools.show'); Route::get('/mcp-servers', [McpServerController::class, 'index'])->name('mcp-servers.index'); Route::get('/mcp-servers/category/{category}', [McpServerController::class, 'category'])->name('mcp-servers.category'); Route::get('/mcp-servers/{mcpServer:slug}/visit', [McpServerController::class, 'visit'])->name('mcp-servers.visit'); Route::get('/mcp-servers/{mcpServer:slug}', [McpServerController::class, 'show'])->name('mcp-servers.show'); Route::get('/skills', [SkillController::class, 'index'])->name('skills.index'); Route::get('/skills/category/{category}', [SkillController::class, 'category'])->name('skills.category'); Route::get('/skills/{skill:slug}/visit', [SkillController::class, 'visit'])->name('skills.visit'); Route::get('/skills/{skill:slug}', [SkillController::class, 'show'])->name('skills.show'); // Kept last: a single-segment catch-all for static pages (e.g. /about). // Must not precede any other single-segment route above (e.g. /tools, /login). Route::get('/{page:slug}', [PageController::class, 'show'])->name('pages.show');