A focused, one-page portfolio positioning Sultan Dayani around technical leadership, AI enablement, developer experience, and cloud platforms.
npm install
npm startThe app runs at http://localhost:3000.
npm test -- --watchAll=false
npm run buildProduction is hosted by the existing Cloudflare Pages Direct Upload project
personal-portfolio. A push to main runs the deployment workflow, which:
- installs the locked dependencies;
- runs the test suite;
- creates the production build;
- stores the build as a short-lived GitHub artifact; and
- deploys
build/to Cloudflare Pages with Wrangler.
The repository requires these GitHub Actions secrets:
CLOUDFLARE_ACCOUNT_IDCLOUDFLARE_API_TOKEN— a dedicated token limited to Account → Cloudflare Pages → Edit
The workflow can also be started manually from GitHub Actions. Cloudflare retains previous Pages deployments for rollback, and GitHub retains each workflow's build artifact for 14 days.
The resume action currently opens an email request because no current resume PDF is stored in the repository. Add the approved file under public/ and update the resume links in src/App.jsx before changing that action to a download.