Dynamic User Profile Routing
Why it matters
Without dynamic profile routing, every user points to the same static page or a 404, which kills the social graph before it forms. No shareable profile URLs means no inbound links, no SEO authority on user-generated content, no deep-linking from emails or notifications, and no way for followers to actually view who they follow. The platform degrades into a feed with no identity layer, and retention collapses because users cannot find or remember each other.
Severity rationale
High because the identity layer is foundational — every social feature (follow, mention, notify) depends on routable profiles.
Remediation
Add a dynamic segment to the profile route so each user resolves to their own page, and fetch profile data server-side so the HTML ships with avatar, bio, and counts intact for crawlers. Use app/users/[id]/page.tsx (App Router) or pages/users/[id].tsx with getServerSideProps (Pages Router), and call notFound() when the user does not exist:
// app/users/[id]/page.tsx
export default async function ProfilePage({ params }: { params: { id: string } }) {
const user = await getUserProfile(params.id)
if (!user) return notFound()
return <Profile user={user} />
}
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the Social Features & Engagement Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
Taxons
History
- 2026-04-18·v1.0.0·Initial import from community-social-engagement·automated