nextjs-app-router
File-system routing, Layouts, and Route Groups.
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
Next.js App Router
Priority: P0 (CRITICAL)
Use the App Router (app/ directory) for all new projects.
File Conventions
- page.tsx: The UI for a route.
- layout.tsx: Shared UI wrapping children. Persists across navigation.
- template.tsx: Similar to layout, but remounts on navigation.
- loading.tsx: Suspense boundary for loading states.
- error.tsx: Error boundary (Must be Client Component).
- not-found.tsx: Custom 404 UI.
- route.ts: Server-side API endpoint.
Structure Patterns
-
Route Groups: Use parenthesis
(auth)to organize routes without affecting URL path.-
app/(auth)/login/page.tsx->/login
-
-
Private Folders: Use underscore
_libto exclude folders from routing. -
Dynamic Routes: Use brackets
[slug].-
app/blog/[slug]/page.tsx->/blog/abc
-
-
Catch-all:
[...slug]matches subsequent segments.
Navigation
-
Link Component: Use
<Link href="/dashboard">for prefetching. -
Programmatic: Use
useRouterhook (Client Components only).-
router.push('/dashboard')
-
-
Redirect: Use
redirect('/login')in Server Components.
Best Practices
- Colocation: Keep component files, styles, and tests inside the route folder.
-
Layouts: Use Root Layout (
app/layout.tsx) for<html>and<body>tags.
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-01-20
- Index updated
- 2026-01-26
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!