Skip to content

Latest commit

 

History

History
66 lines (47 loc) · 2.23 KB

README.md

File metadata and controls

66 lines (47 loc) · 2.23 KB

Hadi Bakhshi — Portfolio

Personal portfolio site for Hadi Bakhshi, a senior software engineer focused on backend architecture, production systems, and practical AI features.

Live: https://hadibakhshi.dev

Stack

Getting started

Requires pnpm (lockfile is pnpm-lock.yaml).

pnpm install
pnpm dev

Open http://localhost:3000.

Script Description
pnpm dev Development server
pnpm build Production build
pnpm start Serve production build
pnpm lint Run Biome checks
pnpm format Format with Biome

Project structure

src/
  app/                 # Routes, root layout, globals, sitemap
  components/
    custom/            # Page sections (Hero, Work, Contact, …)
    ui/                # shadcn primitives
  data/
    resume.ts          # Profile, metrics, experience, stack, contact
    case-studies/      # Case study copy + architecture diagrams
  lib/                 # Shared utilities (layout tokens, cn)
public/                # Static assets, resume.pdf, theme-init.js

Home page sections live in src/app/page.tsx. Case studies are served at /work/[slug].

Editing content

After changing case study slugs or adding a study, ensure it is registered in the case-studies index and appears in the work section data.

Theme

Light/dark mode is toggled in the header. A blocking script (public/theme-init.js) runs early to apply the stored preference and avoid a flash of the wrong theme.

Deploy

Standard Next.js app — deploy on Vercel or any Node host that supports next build / next start.