I don't start with code. I start with the problem. Then I build the software that solves it.
portfolio-102.mp4
Live: ivanescribano.com
| Layer | Technologies |
|---|---|
| Framework | Next.js 16 (App Router) |
| Language | TypeScript |
| Styling | CSS Modules (plain CSS, no preprocessors) |
| Fonts | Playfair Display, DM Sans, JetBrains Mono |
| Icons | Lucide React |
| Images | Cloudinary |
| Deployment | Vercel |
app/
├── components/
│ ├── about/ # About + interactive terminal
│ ├── contact/ # Contact + social links
│ ├── experience/ # Work timeline
│ ├── hero/ # Hero with world animation
│ ├── navbar/ # Floating pill nav + mobile drawer
│ ├── philosophy/ # Video terminal + Kobe quote
│ ├── projects/ # Project cards
│ ├── testimonials/ # Testimonials with photos
│ └── trusted-by/ # Company logo marquee
├── globals.css # Design tokens
├── layout.tsx # SEO metadata
├── page.tsx # Page composition
├── robots.ts
└── sitemap.ts
npm install
npm run devOpen localhost:3000