DEV Community

Parsa Jiravand profile picture

Parsa Jiravand

Frontend developer building back-office tools with server-driven UI. Big on clean architecture, TypeScript, and writing about the craft. Currently shipping a dev post a day.

Location Istanbul - Turkey Joined Joined on  Personal website https://github.com/parsajiravand

Education

Master of IT

Pronouns

Parsa

Work

Senior frontend developer

getCurrentPosition() Doesn't Just Check — It Prompts

getCurrentPosition() Doesn't Just Check — It Prompts

5
Comments
5 min read

Want to connect with Parsa Jiravand?

Create an account to connect with Parsa Jiravand. You can also sign in below to proceed if you already have an account.

Already have an account? Sign in
NestJS Guards: CanActivate, ExecutionContext & Reflector

NestJS Guards: CanActivate, ExecutionContext & Reflector

7
Comments
12 min read
localStorage Isn't Free — It's Blocking Your Main Thread

localStorage Isn't Free — It's Blocking Your Main Thread

5
Comments
5 min read
JSON.stringify Is Quietly Deleting Your File Uploads

JSON.stringify Is Quietly Deleting Your File Uploads

5
Comments
5 min read
The Background Task That Waited 40 Seconds for 'Idle'

The Background Task That Waited 40 Seconds for 'Idle'

5
Comments
5 min read
Vue Composables: The Shared State Trap (+ Cheat Sheet)

Vue Composables: The Shared State Trap (+ Cheat Sheet)

8
Comments
11 min read
The Dropdown You've Been Faking for a Decade

The Dropdown You've Been Faking for a Decade

8
Comments 4
4 min read
Next.js proxy.ts Explained (with Cheat Sheet)

Next.js proxy.ts Explained (with Cheat Sheet)

8
Comments
10 min read
Stop Writing JavaScript To Fix `100vh` On Mobile

Stop Writing JavaScript To Fix `100vh` On Mobile

11
Comments
5 min read
React Derived State: Why That useState Is Probably a Bug

React Derived State: Why That useState Is Probably a Bug

11
Comments 1
12 min read
Your Browser Is Rejecting Every Drop On Purpose

Your Browser Is Rejecting Every Drop On Purpose

10
Comments 1
5 min read
Nuxt Hydration Mismatch: Why It Happens and How to Fix It

Nuxt Hydration Mismatch: Why It Happens and How to Fix It

9
Comments 1
12 min read
Chrome Already Has The Eyedropper You're Building

Chrome Already Has The Eyedropper You're Building

10
Comments 1
5 min read
NestJS Testing Module: Provider Overrides (with Cheat Sheet)

NestJS Testing Module: Provider Overrides (with Cheat Sheet)

17
Comments 3
11 min read
The CSS Property That Fixes Dark Mode's Ugly White Boxes

The CSS Property That Fixes Dark Mode's Ugly White Boxes

12
Comments
4 min read
Stop Debouncing Resize. The Browser Already Watches It.

Stop Debouncing Resize. The Browser Already Watches It.

15
Comments 1
5 min read
Your Fetch Already Streams. You're Buffering It Anyway.

Your Fetch Already Streams. You're Buffering It Anyway.

10
Comments
4 min read
Next.js Parallel & Intercepting Routes: Modals Done Right

Next.js Parallel & Intercepting Routes: Modals Done Right

13
Comments 2
12 min read
The Star Rating That Never Reaches Your Server

The Star Rating That Never Reaches Your Server

11
Comments 1
4 min read
Vue nextTick Explained: How DOM Updates Are Batched

Vue nextTick Explained: How DOM Updates Are Batched

14
Comments 2
11 min read
The 'Read Aloud' Button That Only Works on the Second Click

The 'Read Aloud' Button That Only Works on the Second Click

14
Comments 1
5 min read
useAsyncData Keys in Nuxt: Caching, Dedupe & the Sharing Bug

useAsyncData Keys in Nuxt: Caching, Dedupe & the Sharing Bug

16
Comments 2
12 min read
The Search Highlight That Deletes Your Selection

The Search Highlight That Deletes Your Selection

17
Comments 4
5 min read
addDays() Mutated a Date Three Components Away From Where I Called It

addDays() Mutated a Date Three Components Away From Where I Called It

15
Comments 5
5 min read
React Form Actions: useActionState & useFormStatus Guide

React Form Actions: useActionState & useFormStatus Guide

9
Comments 2
11 min read
My .catch() Never Ran. The Bug Was Two Lines Above It

My .catch() Never Ran. The Bug Was Two Lines Above It

9
Comments 2
5 min read
NestJS Module Encapsulation Explained (with Cheat Sheet)

NestJS Module Encapsulation Explained (with Cheat Sheet)

14
Comments 2
12 min read
I Shipped 'Passwordless Login.' It Still Asked for a Username.

I Shipped 'Passwordless Login.' It Still Asked for a Username.

20
Comments 4
5 min read
Those Share Buttons Are Guessing What's On My Phone

Those Share Buttons Are Guessing What's On My Phone

19
Comments 3
5 min read
Next.js Server Actions: Mutations & Security (Cheat Sheet)

Next.js Server Actions: Mutations & Security (Cheat Sheet)

19
Comments
12 min read
Your Required Field Turns Red Before You Type Anything

Your Required Field Turns Red Before You Type Anything

22
Comments 2
4 min read
Web Workers in JavaScript: The Complete Guide

Web Workers in JavaScript: The Complete Guide

19
Comments 3
10 min read
One CSS Property Replaces Your Checkbox Hack

One CSS Property Replaces Your Checkbox Hack

23
Comments
4 min read
Your Recipe App Is Hiding a Silent Video

Your Recipe App Is Hiding a Silent Video

11
Comments 2
5 min read
React Compiler 1.0: What useMemo You Can Delete

React Compiler 1.0: What useMemo You Can Delete

18
Comments
12 min read
Your Timer Doesn't Know You Tabbed Away

Your Timer Doesn't Know You Tabbed Away

18
Comments 2
4 min read
NestJS Dependency Injection Explained (with Cheat Sheet)

NestJS Dependency Injection Explained (with Cheat Sheet)

11
Comments
11 min read
Stop Regex-Parsing document.cookie. Use CookieStore

Stop Regex-Parsing document.cookie. Use CookieStore

11
Comments 1
5 min read
The await That Silently Breaks navigator.clipboard.writeText()

The await That Silently Breaks navigator.clipboard.writeText()

13
Comments
5 min read
You're not quiet in meetings, you're editing

You're not quiet in meetings, you're editing

19
Comments 1
8 min read
Shadow DOM Needed JavaScript to Exist. Now It Doesn't.

Shadow DOM Needed JavaScript to Exist. Now It Doesn't.

25
Comments 5
5 min read
Next.js Cache Components Explained (with Cheat Sheet)

Next.js Cache Components Explained (with Cheat Sheet)

15
Comments
12 min read
Your Router Doesn't Intercept Navigation. It Reacts To It.

Your Router Doesn't Intercept Navigation. It Reacts To It.

15
Comments
5 min read
Debounce and Throttle in JavaScript: The Complete Guide

Debounce and Throttle in JavaScript: The Complete Guide

19
Comments 1
11 min read
You Don't Need a WebSocket for That Live Feed

You Don't Need a WebSocket for That Live Feed

8
Comments
6 min read
Nuxt useState vs ref(): Why Server State Leaks Across Users

Nuxt useState vs ref(): Why Server State Leaks Across Users

16
Comments
12 min read
Delete Your padding-bottom Aspect-Ratio Hack

Delete Your padding-bottom Aspect-Ratio Hack

15
Comments
5 min read
React Re-render vs Remount: What Actually Triggers Each

React Re-render vs Remount: What Actually Triggers Each

20
Comments 1
11 min read
The outline: none Debate Has Been Over Since 2020

The outline: none Debate Has Been Over Since 2020

17
Comments
4 min read
NestJS Request Lifecycle Explained (with Cheat Sheet)

NestJS Request Lifecycle Explained (with Cheat Sheet)

22
Comments 5
11 min read
Your Grid Has Invisible Columns: auto-fill vs auto-fit

Your Grid Has Invisible Columns: auto-fill vs auto-fit

15
Comments
4 min read
You're truncating bios with `.slice()`. `Intl.Segmenter` knows where the emoji actually end.

You're truncating bios with `.slice()`. `Intl.Segmenter` knows where the emoji actually end.

24
Comments 2
5 min read
Delete Your Auto-Resize Textarea JS. CSS Does It Now.

Delete Your Auto-Resize Textarea JS. CSS Does It Now.

18
Comments 1
5 min read
Nobody tells you the question window is closing

Early job ignorance costs credibility fast

Nobody tells you the question window is closing

18
Comments 4
6 min read
JavaScript Closures: The Complete Guide (with Cheat Sheet)

JavaScript Closures: The Complete Guide (with Cheat Sheet)

16
Comments
12 min read
CSS Animations Can't Pause. The Web Animations API Can.

CSS Animations Can't Pause. The Web Animations API Can.

12
Comments
5 min read
Vue Reactivity Explained: ref vs reactive (+ Cheat Sheet)

Vue Reactivity Explained: ref vs reactive (+ Cheat Sheet)

17
Comments
11 min read
JavaScript Proxy and Reflect: The Complete Guide

JavaScript Proxy and Reflect: The Complete Guide

16
Comments 3
13 min read
The CSS Selector Built to Lose Every Fight

The CSS Selector Built to Lose Every Fight

20
Comments 1
5 min read
One version bump, 40 files to edit. Import maps fix that.

One version bump, 40 files to edit. Import maps fix that.

16
Comments
5 min read
loading...