How afzalhabibi/latest-next-portfolio works
This is a Next.js personal portfolio for presenting professional background, projects, skills, and contact information. A visitor enters through the home page, browses portfolio sections or detail pages, and can follow contact and resume actions. The tree and excerpts support these major pages and shared presentation layers; several page implementations are unsampled, so their internal data wiring is not inferred.
Main entry points: app/page.tsx Home · contact/page.tsx Contact · about/page.tsx About · projects/page.tsx Projects
Components 17
Portfolio pages
- Home
src/app/page.tsx - About
src/app/about/page.tsx - Projects
src/app/projects/page.tsx - Project detail
src/app/projects/[slug]/page.tsx - Skills
src/app/skills/page.tsx - Skill detail
src/app/skills/[slug]/page.tsx - Resume
src/app/resume/page.tsx - Contact
src/app/contact/page.tsx
Portfolio content
- Portfolio data
src/data - Resume data
src/app/resume/resume-data.ts
Shared presentation
- App shell
src/components/layout/AppShell.tsx - Layout components
src/components/layout - Common components
src/components/common - Theme providers
src/components/providers
Client behavior
- Interaction hooks
src/hooks
Other components
- Visitor
- Embedded map
Connections 30
- Visitor → Home: opens
- Visitor → About: browses
- Visitor → Projects: browses
- Visitor → Project detail: opens
- Visitor → Skills: browses
- Visitor → Skill detail: opens
- Visitor → Resume: opens
- Visitor → Contact: opens
- Home → Projects: links to
- Home → Skills: links to
- Home → Contact: links to
- Home → About: links to
- Projects → Project detail: links to
- Skills → Skill detail: links to
- App shell → Layout components: renders
- App shell → Theme providers: provides
- Home → Portfolio data: reads
- About → Portfolio data: reads
- Contact → Portfolio data: reads
- Resume → Resume data: reads
- Home → Common components: renders
- About → Common components: renders
- Projects → Common components: renders
- Contact → Common components: renders
- Home → Layout components: renders
- About → Layout components: renders
- Projects → Layout components: renders
- Contact → Layout components: renders
- Contact → Embedded map: embeds
- Interaction hooks → Visitor: observes viewport and scroll