FreelanceSep 18, 2026
Freelance pricing notes
Fixed scope vs retainer — what I learned pricing my first 40 projects.
All the posts I write occasionally about frontend, design and freelance life.
FreelanceSep 18, 2026
Fixed scope vs retainer — what I learned pricing my first 40 projects.
ReactSep 18, 2026
Form mutations without boilerplate: useActionState, useFormStatus and optimistic updates.
FrontendSep 18, 2026
Which components should stay on the client? Practical ways to push the 'use client' boundary down without breaking data flow.
Sep 13, 2026
What I learned after five years: the client isn't buying hours, they're buying results. Here's a practical framework.
Sep 13, 2026
Which components should stay on the client? Practical ways to push the 'use client' boundary down without breaking data flow.
Sep 13, 2026
Partial, Pick, Omit, Record, ReturnType — which one when? Here's a compilation with real scenarios.
Sep 13, 2026
Purge configuration, unused utilities and 5 ways to put your production bundle on a diet.
Sep 13, 2026
Server Components, layout data, params and searchParams — a guide to understanding how data flows in App Router.
Sep 13, 2026
Technical skills aren't enough. Managing the client relationship is half of freelance success.
Sep 13, 2026
Let's skip theory. Card grids, sticky sidebar, holy grail — grid patterns I actually use.