React-Like Functional Web Components (positive-intentions.com)
from xoron@programming.dev to programming@programming.dev on 01 Oct 2024 06:38
https://programming.dev/post/20087825

Functional Web Components

positive-intentions.com/blog/dim-todo-list

Github: github.com/positive-intentions/dim

Demo: dim.positive-intentions.com

#programming

threaded - newest

Lysergid@lemmy.ml on 01 Oct 2024 07:55 collapse

Is it better than React functional components in any way? I don’t see benefit over React functional components or even Lit’s class components

xoron@programming.dev on 01 Oct 2024 08:10 collapse

no. it isnt better or more stable than React. its all an experimental proof-of-concept.

its an idea im trying out. i thought maybe others might find it interesting.

im aiming to see if i can get something that looks and behaves like React, but works natively in a browser without the need to build or transpile. i think in theory it could work.

MagicShel@programming.dev on 01 Oct 2024 10:24 next collapse

Go for it. React wasn’t anything anyone gave a shit about until it was. It’ll eventually die, too, like every other front end framework. Maybe this’ll be the concept that replaces it. Who knows?

Waldowal@lemmy.world on 01 Oct 2024 12:05 next collapse

Sounds great to me. All the React tooling is annoying.

Lysergid@lemmy.ml on 09 Oct 2024 09:59 collapse

After closer look I can say this is great idea. Initially I thought this messes with Lit’s lifecycle bringing React’s lifecycle drawbacks but seems like it’s not. I think at some point you should get in touch with Lit devs and see if it can become part of Lit lab or even Lit itself

xoron@programming.dev on 12 Oct 2024 07:21 collapse

thanks!

when i started, the attempt was to try to create this functionality without using any dependencies (including Lit). the Lit html function is well done and makes things very convenient for handling things like the lifecycle methods and caching states.

i would like to revisit that attempt, but i found that Lit does it very well and for me to create something from scratch would take much more consideration and i expect i would overlook some nuanced detail. i’ll see what i can make of it in future changes.

while im sure Lit users could benefit from this, as for contributing to the Lit ecosystem, im not really sure what steps to take for this. similarly, React 19 also introduces “support” for web components.