Bilingual personal portfolio for Igor Melo, Senior Software Engineer at Cognyte — built with Next.js, TypeScript, and a focus on performance, accessibility, and clean architecture.
Live: igorjm.github.io · Resume: PDF · LinkedIn: igorjm
- Bilingual — English and Brazilian Portuguese (
next-intl) - Static export — fast, CDN-friendly deploy to GitHub Pages
- Design system — custom theme tokens, dark/light mode, scroll-driven animations
- Project showcase — live previews via Microlink with graceful fallbacks
- CI/CD — automated build and deploy on every push to
master
| Layer | Tools |
|---|---|
| Framework | Next.js 15 (App Router), React 19 |
| Language | TypeScript |
| Styling | Tailwind CSS 4 |
| i18n | next-intl |
| Motion | Framer Motion |
| Deploy | GitHub Actions → GitHub Pages |
.
├── .github/workflows/ # CI/CD (GitHub Pages deploy)
└── web/ # Next.js application
├── app/ # Routes, layouts, global styles
├── components/
│ ├── layout/ # App shell (providers, scroll effects)
│ ├── sections/ # Page sections (hero, about, projects…)
│ └── ui/ # Reusable UI primitives
├── hooks/ # Client-side hooks
├── i18n/ # Locale routing & navigation
├── lib/
│ ├── constants/ # Asset paths, social links
│ ├── data/ # Portfolio content (profile, projects…)
│ ├── types/ # Shared TypeScript types
│ ├── preview.ts # Live project preview URLs
│ ├── theme.ts # Design tokens
│ └── utils.ts # Utilities
├── messages/ # i18n copy (en, pt-BR)
└── public/
├── images/ # Logo, profile photo
├── resume/ # CV / resume PDF
└── projects/ # Optional manual project screenshots
git clone https://github.com/igorjm/igorjm.github.io.git
cd igorjm.github.io/web
npm install
npm run devOpen http://localhost:3000/en (or /pt-BR for Portuguese).
| Command | Description |
|---|---|
npm run dev |
Start dev server (Turbopack) |
npm run build |
Production static export |
npm run start |
Serve production build |
npm run lint |
Run ESLint |
| What | Where |
|---|---|
| Copy (EN / PT) | web/messages/en.json, pt-BR.json |
| Profile & resume | web/lib/data/profile.ts, public/resume/ |
| Experience | web/messages/*.json + lib/data/experience.ts |
| Projects | web/lib/data/projects.ts |
| Tech stack | web/lib/data/skills.ts |
| Project screenshots | web/public/projects/{id}.png (optional override) |
Pushes to master trigger the GitHub Actions workflow that builds web/ and deploys the static export to GitHub Pages.
Igor Melo — Senior Software Engineer · Florianópolis, Brazil