Live data from Hacker News

A React implementation of Spectrum, Adobe’s design system

react-spectrum.adobe.com

61–70 of 74 posts

Re: A React implementation of Spectrum, Adobe’s design system

#61

Very nice to look through. Does anyone have a list of React "design systems"? I was not familiar with this term. Also, I am wondering: looks like there is https://spectrum.adobe.com . What is the purpose of Spectrum without an implementation like this? Why would Spectrum be a public published thing, considering that only Adobe makes Adobe products?

You are looking for https://github.com/alexpate/awesome-design-systems

Re: A React implementation of Spectrum, Adobe’s design system

#62

Not sure if its because I've been using React for the last 6 years and I've "fallen out of love" or it is actually starting to show its age but... React, which was once the greatest thing to happen to UI frameworks, now looks like a very leaky abstraction. The prevalence of `useMemo` and `useCallback` to get around perf issues, `useEffect` to try to interact with event systems outside of React, and `useRef` to save t…

I disagree. So far NO other UI library/framework than react offered the “interface as a function of state” paradigm. All others (Svelte, Vue partially) are based on templates with their ad-hoc syntax for ifs and maps/loops and so on. This is a non starter for me. I will consider other things than react, as long as they use this concept of interface as a function of state. This is non negociable for me at this point.

Re: A React implementation of Spectrum, Adobe’s design system

#64
post #9

One of the things that I always find missing in these libraries/collections is a date/time picker. I know these are available via many separate projects, but it's nice if one picks a collection like that, that all inputs are homogeneous.

ant-design is the most complete component collection I've come across. I'm in the process of swapping out element-ui for ant-design-vue in a serious project.

Very mature and very active, while being tree-shaking friendly and lets you select just the components/css you need. Used on Baidu and other major sites.

https://ant.design/components/date-picker/

Re: A React implementation of Spectrum, Adobe’s design system

#65
post #59

We should standarize these "UI themes" so that other frameworks don't get left out (e.g. easy for Angular/Vue to use this). In Java world, it's called SPI (Service Provide Interface), like API but the opposite.

It's called Web Components, a standard built into browsers for many years now which means it will be backwards-compatible in perpetuity.

Web Components only really covers half the picture here. Libraries like this provide integration with their chosen framework, including tying events into however the framework should do such things, and places where data flows without DOM nodes (e.g. if a widget renders based on some dynamic data source that isn’t child elements). Often you could do this with Web Components, but it would substantially harm expressivity and/or performance.

Also you can generally make the implementation lighter and faster if you implement it within the framework, especially if the way you make Web Components uses a different framework (so now you have n+1 frameworks on your page).

Re: A React implementation of Spectrum, Adobe’s design system

#66

Earlier quoted context omitted.

It's funny to see facts down-voted by an usually well informed and rational public. :-D Still, facts are facts, no matter how sloppy the wording I've chose. I didn't mean to diminish the effort put into that one incarnation of those so called design systems. I've only mentioned that it's (like all others of the "modern" ones I've seen until now) light years behind what you could have got 10+ years ago. If I would lik…

> But the productivity of web tech for application development is just somewhere on the level of 20 years ago To be fair, the web was never meant to be an application development platform. It has only become that because of the ubiquity of the web, and the many advantages that web applications confer (multi-platform, instant updates etc.) Given that, it's not surprising that the web application space continues to evo…

Indeed the web was not initially meant to be an application development platform.

But it has been meant to be one now for 10+ years, basically since chrome arrived, along with ideas like chrome OS and others...

And as a matter of fact it is now the most ubiquitous application development platform.

Re: A React implementation of Spectrum, Adobe’s design system

#68
post #62

Not sure if its because I've been using React for the last 6 years and I've "fallen out of love" or it is actually starting to show its age but... React, which was once the greatest thing to happen to UI frameworks, now looks like a very leaky abstraction. The prevalence of `useMemo` and `useCallback` to get around perf issues, `useEffect` to try to interact with event systems outside of React, and `useRef` to save t…

I disagree. So far NO other UI library/framework than react offered the “interface as a function of state” paradigm. All others (Svelte, Vue partially) are based on templates with their ad-hoc syntax for ifs and maps/loops and so on. This is a non starter for me. I will consider other things than react, as long as they use this concept of interface as a function of state. This is non negociable for me at this point.

Can you clarify what you mean by "interface as a function of state"? All the templated-frameworks still fit this definition... they are reactive to the state of your component. In fact, they are more performant than React because their template syntax provides static analysis, so the app can be optimised at compile time.

Re: A React implementation of Spectrum, Adobe’s design system

#69
post #59

Earlier quoted context omitted.

It's called Web Components, a standard built into browsers for many years now which means it will be backwards-compatible in perpetuity.

Web Components only really covers half the picture here. Libraries like this provide integration with their chosen framework, including tying events into however the framework should do such things, and places where data flows without DOM nodes (e.g. if a widget renders based on some dynamic data source that isn’t child elements). Often you could do this with Web Components, but it would substantially harm expressivi…

Web Components can be barebones, use no dependencies, do all DOM manipulations directly. That would give you vanillajs performance. It won't be easy to scale to big components this way--the use case is small components with minimal state, something like a time picker at most. Integrating the Web Component into React should not be much harder than integrating an element. At best, do nothing or at worst, create a Ref and attach an event listener. The benefit is this would work across all other JS frameworks. Web Components are primitive, like the C ABI, but everyone can speak it, like the C ABI.

Re: A React implementation of Spectrum, Adobe’s design system

#70
post #62

Not sure if its because I've been using React for the last 6 years and I've "fallen out of love" or it is actually starting to show its age but... React, which was once the greatest thing to happen to UI frameworks, now looks like a very leaky abstraction. The prevalence of `useMemo` and `useCallback` to get around perf issues, `useEffect` to try to interact with event systems outside of React, and `useRef` to save t…

I disagree. So far NO other UI library/framework than react offered the “interface as a function of state” paradigm. All others (Svelte, Vue partially) are based on templates with their ad-hoc syntax for ifs and maps/loops and so on. This is a non starter for me. I will consider other things than react, as long as they use this concept of interface as a function of state. This is non negociable for me at this point.

Choo-Choo!

https://choo.io

Post reply on HN