portfolio---shehab-new

Shehab Abedrabuh — personal portfolio

A complete responsive English portfolio built with React, TypeScript, a Next-compatible Vinext static export, CSS and a dynamically imported Three.js scene.

Run

Use Node.js 22.13 or later.

npm ci
npm run dev

Preview: http://localhost:5173

npm run build

The portable production output is dist/client/. Serve that folder using any static web server. For example: python -m http.server 4173 --directory dist/client.

What is included

Contact form

This is an email composer, not a hosted inbox. It validates locally, then offers a mailto link. The visitor must open their email app, review and send. The page never claims an email was sent. No form data is stored or posted to a server.

Editing

Deployment

Upload the contents of dist/client/ to a static host. The custom domain shehab.bio is declared in SEO metadata but DNS/domain connection is a separate hosting operation. A Sites project identity is retained in .openai/hosting.json for the private deployment.

Asset provenance

Portrait and original CV: provided by Shehab. Nova1st still and video: extracted from his supplied recording. Manrope: Fontsource, OFL license. Icons: Lucide (ISC) and simple brand marks. The social card was produced with the built-in Image Generation tool; see ASSET-NOTES.md.

No Lighthouse score is claimed. Production TypeScript, build output, assets, responsive layouts and core interactive flows were checked.