Case 01 — my site

Done

iukhvidov.dev — a site that is its own proof.

A portfolio site built on the very model it sells.

Typeportfolio-site
Nicheself
TermSpring 2026
LocalesHE / RU / EN
Statuslive

The brief

A portfolio site is the tool that brings me small-business clients in Israel. It has to hold a position — one person, no agency — and show my level before anyone writes. So I built it on the very model I sell.

  • 013 locales, HE — RTL
  • 02Lighthouse — target 90+
  • 03Mobile-first, no AI-generic look
  • 04One developer, an AI-amplified stack

Key decisions

Decision 01

Anti-agency as a stance, not as a design

A

Brutalism, a dark techy look — so the contrast lives in the design too.

B

Warm editorial, with the contrast living only in the copy.

I chose path B. To a small-business owner in Israel brutalism reads as cold and expensive. A warm look keeps trust, while the anti-agency stance stays sharp — without shouting in the design.

Decision 02

Services by niche, not by technology

A

4 cards — Websites / Automations / CRM / AI, like any freelancer.

B

Services laid out by business type — barbershop, cafe, carpentry, garage.

I chose path B. A barbershop owner is not looking for web development — he is looking for someone who gets that bookings fall through. A niche instead of a technology lets the client recognize himself at once.

Decision 03

RTL from day one, not a patch at the end

A

Build in English, then add Hebrew support at the end.

B

Design Hebrew first, with logical properties from the first commit.

I chose path B. Hebrew here is the primary language, not supported. RTL designed from the start does not break on numbers, arrows and grids — and does not need a whole separate round of fixes.

Decision 04

Demos instead of descriptions

A

Screenshots and copy about our solution.

B

Working demos embedded in the page — you drag, click, change.

I chose path B. You do not take my word for it — you drag a CRM card right here and now. A live demo proves the level instead of promising it.

Decision 05

Price in chat, not in a package table

A

3 fixed price packages on the page.

B

A lower price anchor plus a direct question on WhatsApp.

I chose path B. In Israel a small-business price is closed in writing. A fixed package is either too expensive for one client or a loss on another — a visible anchor and a conversation are fairer than both.

Decision 06

Performance as a promise, not a record

A

Show a screenshot of one perfect Lighthouse number once.

B

Set the numbers as a target re-measured before every handover.

I chose path B. A single number in a screenshot says nothing about your site. A measured target says what I commit to — including the honest fact that Mobile is still below Desktop.

Metrics

Performance Desktop99
Performance Mobile92
Accessibility96
Best Practices92
SEO100
Locales3 (HE / RU / EN)

Mobile Performance is still below Desktop — that is in progress, I am not hiding it.

Process

  1. 01

    Concept locked

    Anti-agency plus services by niche — the two decisions everything else rests on.

  2. 02

    The home page

    Manifesto, niches, live demos — a navigator that pulls the visitor inside.

  3. 03

    Service pages

    Websites and CRM built as a chain — Claude and a team of agents, one person leading.

  4. 04

    The work section

    The case index and the first case — the page you are reading now.

Stack

Framework

Next.jsReact

Styling

Tailwind v4

i18n

next-intl

Interaction

dnd-kit

Language

TypeScript strict

Not WordPress. Next.js is faster, safer, and hosting costs you 0–10 ₪ a month instead of 50–100. A stack chosen for your wallet, not for mine.

Want the samewrite to me.

I reply within 4 hours Sun-Thu, 09:00-19:00 IDT.