How branstile/personalwebsite works
This is a personal portfolio site. Visitors browse a home page with a biography, resume download, experience and project summaries, then open dedicated detail pages; the pages obtain experience and project records through shared Prisma result helpers. API routes also expose those records. The source excerpts show route-to-helper and page-to-component calls, but not the helper’s database implementation, so the database connection is left unverified. The README provides no further capability details.
Main entry points: prismaResults.ts Prisma Results · NavBar.tsx Navigation · app/page.tsx Home Page · experience/page.tsx Experience Page
Components 15
Site Shell
- Root Layout
app/app/layout.tsx - Navigation
app/app/components/NavBar.tsx
Portfolio Content
- Home Page
app/app/page.tsx - About Profile
app/app/components/AboutMe.tsx - Resume PDF
app/public/resume.pdf - Summary Cards
app/app/components/InfoCard.tsx - Experience Page
app/app/experience/page.tsx - Experience Details
app/app/components/ExExtended.tsx - Projects Page
app/app/projects/page.tsx - Project Details
app/app/components/ProjectsExtended.tsx
Content Access
- Experience API
app/app/api/experience/route.ts - Projects API
app/app/api/projects/route.ts - Prisma Results
app/prisma/prismaResults.ts - Portfolio Database
app/prisma/schema.prisma
Other components
- Visitor
Connections 19
- Visitor → Navigation: opens site
app/app/components/NavBar.tsx - Navigation → Home Page: links to
app/app/components/NavBar.tsx - Navigation → Experience Page: links to
app/app/components/NavBar.tsx - Navigation → Projects Page: links to
app/app/components/NavBar.tsx - Root Layout → Navigation: renders
app/app/layout.tsx - Visitor → Root Layout: views pages
- Home Page → About Profile: renders
app/app/page.tsx - Home Page → Summary Cards: renders
app/app/page.tsx - About Profile → Resume PDF: links to
app/app/components/AboutMe.tsx - Home Page → Prisma Results: fetches records
app/app/page.tsx - Experience Page → Prisma Results: fetches records
app/app/experience/page.tsx - Experience Page → Experience Details: renders
app/app/experience/page.tsx - Projects Page → Prisma Results: fetches records
app/app/projects/page.tsx - Projects Page → Project Details: renders
app/app/projects/page.tsx - Experience API → Prisma Results: fetches records
app/app/api/experience/route.ts - Projects API → Prisma Results: fetches records
app/app/api/projects/route.ts - Prisma Results → Portfolio Database: reads records
- Visitor → Experience API: requests data
- Visitor → Projects API: requests data