Personal portfolio of Arman Danesh, Front-End Developer.
Built with Next.js 15 (App Router), TypeScript, Tailwind CSS, Framer Motion, and react-icons.
| Live resume | https://my-resume.armandaneshwork.workers.dev/ |
| documentation | https://arman-danesh.github.io/my-resume/ |
| Source code | github.com/arman-danesh/my-resume |
Resume → https://my-resume.armandaneshwork.workers.dev/
Docs → https://arman-danesh.github.io/my-resume/
GitHub → https://github.com/arman-danesh/my-resume
Deployed on Cloudflare Workers (static assets from out/ + thin worker.js).
| Feature | Detail |
|---|---|
| Bilingual | English / Persian with RTL and smooth crossfade |
| Sections | About, Info, Education, Focus areas, Contact, Skills, Experience, Services, Projects, Live links |
| Motion | Welcome intro, skill bars, circular progress, scroll-in cards |
| PWA-ready | manifest.webmanifest + SVG logo/favicon |
| Static export | output: "export" → out/ served by Worker assets |
| docs | TypeDoc (dark theme) published on every release to gh-pages |
worker.js + static out/)my-resume/
├── app/ # Next.js App Router
├── components/ # UI sections (TSDoc)
├── lib/ # data, types, LanguageContext (TSDoc)
├── public/ # static assets + fonts
├── worker.js # Cloudflare Worker (serves ASSETS)
├── wrangler.jsonc
├── typedoc.json # TypeDoc config (dark theme)
├── docs-theme.css # Custom dark styles for TypeDoc
├── .github/workflows/docs.yml
└── package.json
npm install
npm run dev # http://localhost:3000
npm run build # static export → out/
npm run preview # wrangler dev
npm run deploy # build + wrangler deploy
Comments use TSDoc (@param, @returns, @module, @packageDocumentation).
Generated site uses a dark theme (docs-theme.css).
https://arman-danesh.github.io/my-resume/
npm run docs # writes HTML to ./docs
npm run docs:serve # preview the docs site
Workflow: .github/workflows/docs.yml
| Trigger | Action |
|---|---|
| GitHub Release published | Build TypeDoc → push to gh-pages branch |
Git tag v* |
Same |
| Actions → Docs → Run workflow | Manual |
After the first successful run, enable Settings → Pages → Deploy from branch gh-pages / root.
| Field | Value |
|---|---|
| Build command | npm run build |
| Deploy command | npx wrangler deploy |
npm run build → out/
wrangler deploy → worker.js + out/ as ASSETS
Live site: https://my-resume.armandaneshwork.workers.dev/
All copy: lib/data.ts (EN + FA). Types: lib/types.ts.
MIT © Arman Danesh