Amr Abdelhalim Portfolio Website Project
A bilingual personal portfolio website with profile, services, projects, and contact sections captured from the live custom domain.
Project image carousel

Image 1 of 5
Project Concept
This project is the live personal portfolio site you’re browsing right now — the public identity layer presenting the profile, services, project evidence, and contact channels. Unlike the other portfolio entries, this isn’t a separate technical demo; it’s the actual product a visitor is using at this moment.
What the Interface Shows
A bilingual (Arabic/English) homepage with a real interface-level language switch and full mirrored direction (RTL/LTR), categorized project and service listings with pagination, detail pages with a media gallery and linked project/service relationships, static pages (about, contact, privacy, terms), and a dark/light theme with persisted preference.
My Role and Decisions
Among the most significant documented architectural decisions: the move from GitHub Pages to Cloudflare Pages — chosen specifically because Cloudflare applies _redirects rules at the edge, which GitHub Pages cannot do, and I decided not to keep two active production paths running in parallel. Another key decision was restricting React to a small set of interaction “islands”, deliberately keeping the language switcher and theme toggle outside React — because the dark-mode bootstrap script must run before hydration to prevent a color flash, and language switching already works with plain links requiring no JavaScript. I also deliberately separated project and service taxonomy vocabularies in the content model, so legacy project categories wouldn’t dictate future service capabilities. I added content-provenance tracking fields (contentOrigin/reviewStatus) so auto-generated text can never be mistaken for approved, owner-reviewed content.
Technical Aspects
A fully static Astro 7 site (no application server), strict TypeScript, Tailwind v4, and selective React “islands” for interaction such as the contact form, media carousel, and lightboxes. A structured bilingual content model covers projects, services, certificates, and static pages. A complete JSON-LD structured-data foundation, deployment via Cloudflare Pages with Wrangler Direct Upload, and a release quality gate (build checks, content security, dependency audit, and browser QA) before any deployment.
Project Value in the Portfolio
This site is the clearest live proof of engineering discipline in the entire portfolio — formally documented architectural decisions, a strict separation between content and logic, and a real release quality gate instead of ad hoc publishing. Any visitor sees the direct result of these decisions simply by browsing the site right now.
Related projects
Static Personal Website
A personal résumé page built with Hugo — info, skills, education, and work.
Read more: Static Personal WebsiteSimple Company Website
A technology-company website built with Hugo, services and projects, built with a static generator.
Read more: Simple Company WebsiteSmall Blog Website
A Hugo-built blog with twelve posts, categories, and tags, with pagination.
Read more: Small Blog WebsiteRelated services
Static and Content-Driven Websites
Fast content-first websites for portfolios, company pages, blogs, and informational sites with clear structure and low-maintenance delivery.







