← All projects

PAOLO.DESIGN

The site you're looking at, designed and built from scratch

Context

Personal

Team

Solo

Duration

Evolving since 2024

Year

2026

If a client could see only one of my projects, it would be this site: strategy, design and code, all mine, in three languages.

01

Where I started: v1

paolo.design was born during the web development exam at IAD. I already knew HTML, CSS, vanilla JavaScript and Angular, so I decided to jump into React, with AI as a coding partner and never as the pilot. The v1 was one static page: a sphere of faces spinning in the background and a single big invitation, Come into my world. More an exercise in style than a portfolio. It is still online, because it shows where I started from.

See the v1 ↗
02

Choosing the name

paolo.design instead of my legal name, on purpose. It keeps my personal reputation and my brand on separate tracks. Brand strategy applied to myself, before any client. The .design extension was free, and I wanted to be the only Paolo in the world with paolo.design, and build the whole branding on top of it.

03

Three pages, three ways to look at me

The v2 split into three. The home does the standard job and goes straight to the point for whoever is hiring: projects, role, contacts, all in 2D and accessible. The match page puts emotion back into a digital product, through the gamification of the swipe. The art section is where I have no external constraint and let every creative impulse out. Bold minimalism and emotional design, applied to three different audiences without betraying any of them.

04

The Match page story

I set out to bet everything on the Tinder-style swipe. Letting the idea settle, I understood that one page of wow can't carry a portfolio, and that a home doing its job was needed too. The starting idea was graphic; the process took it apart.

05

The 3D room

The technically hardest thing I've solved is an explorable room in Three.js, with interactions, movements and objects telling my hobbies. It's the piece I'm proudest of.

Enter the room ↗
06

Three languages, three reasons

Italian because it's my mother tongue, English because I hold a C1, Danish because I'm aiming at Copenhagen. Every string of the site exists in all three.

07

The invisible craft

Generated design tokens, accessibility (skip links, route announcer, reduced motion), Vitest and Playwright suites, per-route SEO with prerendering, GDPR-compliant cookie consent. The part you only see if you open DevTools, but it's there anyway.

Approach & craft

Design engineer end to end, and everything here is mine: strategy, branding, design, copy in three languages, and the React, TypeScript and Three.js build. My method with AI, in my own words: "I have an idea and I expand it with AI; I try to never delegate the reasoning to AI."

ReactTypeScriptThree.jsViteGSAPFramer MotionVitest + Playwright

The outcome

  • Live in three languages, with every key aligned across them
  • Design system with generated tokens, documented on /design-system
  • Accessibility and performance treated as features, not afterthoughts
  • Zero templates: every page designed and coded from scratch

Want something like this?

  • Brandingfrom €1,500
  • Simple sitefrom €2,500
  • Advanced websitefrom €5,000
See packages and pricing →
PAOLO.DESIGN | Case study by Paolo Frassato