DEV Community

Dario Mannu profile picture
Three Year Club
8 Week Community Wellness Streak
Two Year Club
4 Week Community Wellness Streak
2 Week Community Wellness Streak
One Year Club
Writing Debut
1 Week Community Wellness Streak
Composable UI contracts and an algebraic approach to layout, style and interaction

Composable UI contracts and an algebraic approach to layout, style and interaction

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
4 min read

Want to connect with Dario Mannu?

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

Already have an account? Sign in
HTML strings vs the DOM API: from a small benchmark to a surprising result

HTML strings vs the DOM API: from a small benchmark to a surprising result

3
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 2
3 min read
Rediscovering Effect Management with Effect Maps

Rediscovering Effect Management with Effect Maps

7
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
6 min read
Contrarian JavaScript Frameworks: The Top 3

Contrarian JavaScript Frameworks: The Top 3

3
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 7
5 min read
Building a Stream-Oriented, Infinite-Scrolling DEV.to reader

Building a Stream-Oriented, Infinite-Scrolling DEV.to reader

6
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
5 min read
From Plain Functions to Reactive Streams: a mindset change with a thousand benefits

From Plain Functions to Reactive Streams: a mindset change with a thousand benefits

7
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 8
4 min read
Why Angular Isn’t the Observable Framework You Think It Is

Why Angular Isn’t the Observable Framework You Think It Is

1
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
How I Turned My RxJS Headaches Into Rimmel.js

How I Turned My RxJS Headaches Into Rimmel.js

7
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 4
3 min read
You've been using Observables wrong

You've been using Observables wrong

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
Creating "Suspense" with a Promise and an Attribute Mixin

Creating "Suspense" with a Promise and an Attribute Mixin

4
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
OOP=middle ages, FP=enlightenment, FRP=impressionism, SP=minimalism

OOP=middle ages, FP=enlightenment, FRP=impressionism, SP=minimalism

1
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
4 min read
Reactive Streams: Functional vs Imperative

Reactive Streams: Functional vs Imperative

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
Callforwards: reactivity modelled by middleware

Callforwards: reactivity modelled by middleware

4
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
From jQuery to the most complex components

From jQuery to the most complex components

3
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 3
2 min read
You might actually not like React

You might actually not like React

3
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 2
6 min read
Forward vs Reverse Pipelines: unidirectional code flow, bidirectional data flow

Forward vs Reverse Pipelines: unidirectional code flow, bidirectional data flow

4
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 2
3 min read
Hey you, reading this 👀 are you a human or a bot?

Hey you, reading this 👀 are you a human or a bot?

7
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 5
1 min read
Why Exponential Backoff is Broken

Why Exponential Backoff is Broken

6
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 5
3 min read
Bring some “Suspense” with a BehaviorSubject

Bring some “Suspense” with a BehaviorSubject

8
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 9
2 min read
Can this pattern make Dependency Injection obsolete?

Can this pattern make Dependency Injection obsolete?

1
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
4 min read
A Stream-Oriented App, built in public

A Stream-Oriented App, built in public

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
Signals have no operators. Shall we add some?

Signals have no operators. Shall we add some?

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
TDD is a scam. Grow up and do this instead

TDD is a scam. Grow up and do this instead

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 1
4 min read
State Management and the Mixed Wastewater Problem

State Management and the Mixed Wastewater Problem

3
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
Attribute Mixins: Directives made functional

Attribute Mixins: Directives made functional

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
4 min read
Apple M1+ web developers are cheating. You should do that, too

Apple M1+ web developers are cheating. You should do that, too

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 1
5 min read
Observables, Signals, Callforwards: 3 ways to manage reactive state

Observables, Signals, Callforwards: 3 ways to manage reactive state

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
Creating Web Components with a Function, no Classes, no Fluff

Creating Web Components with a Function, no Classes, no Fluff

3
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
How to build the perfect article about JavaScript in 2025 (sarcastic)

How to build the perfect article about JavaScript in 2025 (sarcastic)

4
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
A Chrome Killer for Productivity

A Chrome Killer for Productivity

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
Arrays made Observable: a convenient approach to UI rendering

Arrays made Observable: a convenient approach to UI rendering

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
Stream-Oriented Programming: an introduction

Stream-Oriented Programming: an introduction

5
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
4 min read
From "callbacks" to "callforwards": an alternative approach to reactivity

From "callbacks" to "callforwards": an alternative approach to reactivity

4
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
4 min read
Native JavaScript Observables and the Phantom Observable Problem

Native JavaScript Observables and the Phantom Observable Problem

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 1
6 min read
A Drag'n'Drop recipe: functional, 20 lines, 1 Collection, 1 Attribute Mixin.

A Drag'n'Drop recipe: functional, 20 lines, 1 Collection, 1 Attribute Mixin.

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
Event Adapters: turning UI events into pure data for your models

Event Adapters: turning UI events into pure data for your models

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
Getting rid of "lifecycle hooks"

Getting rid of "lifecycle hooks"

5
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
3 min read
Do you think Signals suck?

Do you think Signals suck?

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 1
5 min read
Vanilla JS is unscalable. Here is why

Vanilla JS is unscalable. Here is why

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
4 min read
Do you think Observables suck? Read this first!

Do you think Observables suck? Read this first!

3
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
4 min read
Rendering "glitches" in reactive programming

Rendering "glitches" in reactive programming

1
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
Lit vs Rimmel - Tagged Templates in OOP vs SP

Lit vs Rimmel - Tagged Templates in OOP vs SP

4
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 3
4 min read
Did you get functional/reactive wrong?

Did you get functional/reactive wrong?

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
Extending UI components with Attribute Mixins

Extending UI components with Attribute Mixins

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
Array.sort() vs Array.toSorted() performance: which one is faster?

Array.sort() vs Array.toSorted() performance: which one is faster?

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
How my custom GPT taught me how to use my own library!

How my custom GPT taught me how to use my own library!

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
1 min read
The "last mile" of functional-reactive web development

The "last mile" of functional-reactive web development

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
Async Mixins with Rimmel.js

Async Mixins with Rimmel.js

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
Signals & Hooks vs Observables

Signals & Hooks vs Observables

🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ”
2 min read
Build a reactive flipboard display with RxJS and Rimmel.js

Build a reactive flipboard display with RxJS and Rimmel.js

2
🏆 āļĒāļ­āļ”āļ™āļīāļĒāļĄ: dariomannu - āļŠāļĢāļļāļ›āļ”āļĢāļēāļĄāđˆāļēāļĨāđˆāļēāļŠāļļāļ” 2
4 min read
loading...