<story><title>React Table is a “headless” UI library</title><url>https://github.com/tannerlinsley/react-table/blob/master/docs/concepts.md</url></story><parent_chain><item><author>outsidetheparty</author><text>I&amp;#x27;m very curious how do people feel about the &amp;quot;headless component&amp;quot; UI strategy?  First came across the concept at a conference recently -- React Table was one of the key examples the speaker gave, in fact -- and I find the idea intriguing, but I&amp;#x27;m not quite sure yet whether I want to subscribe to the newsletter.&lt;p&gt;Is it a useful way to separate look-and-feel concerns from functional concerns, or is it just another layer of indirection?</text></item></parent_chain><comment><author>johnsoft</author><text>I&amp;#x27;m a fan. It&amp;#x27;s so refreshing to have all the HTML and CSS in your own codebase, under your control, instead of reading through a list of 50 sparsely-documented props only to realize that none of them quite do what you need.&lt;p&gt;Another example of this pattern is `downshift`, which is a headless autocomplete library: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;downshift-js&amp;#x2F;downshift&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;downshift-js&amp;#x2F;downshift&lt;/a&gt;&lt;p&gt;I would love to see a datepicker component that used this design. I have some choice words for the various datepicker libs I&amp;#x27;ve used over my career and none of them are friendly.</text></comment>
<story><title>React Table is a “headless” UI library</title><url>https://github.com/tannerlinsley/react-table/blob/master/docs/concepts.md</url></story><parent_chain><item><author>outsidetheparty</author><text>I&amp;#x27;m very curious how do people feel about the &amp;quot;headless component&amp;quot; UI strategy?  First came across the concept at a conference recently -- React Table was one of the key examples the speaker gave, in fact -- and I find the idea intriguing, but I&amp;#x27;m not quite sure yet whether I want to subscribe to the newsletter.&lt;p&gt;Is it a useful way to separate look-and-feel concerns from functional concerns, or is it just another layer of indirection?</text></item></parent_chain><comment><author>BigJono</author><text>I&amp;#x27;ve never used one, but it sounds like a great idea. 3rd party React components are a huge pain in the ass to work with. People do all sorts of bullshit like re-implement half of CSS in their component&amp;#x27;s API and half the time it&amp;#x27;s easier to just build the fucking thing yourself than learn all the arbitrary rules around customisation the author has conjured up.&lt;p&gt;The best reusable components are the ones that have exactly one look, which you&amp;#x27;re fine with, and are just plug in and go.&lt;p&gt;None of that is a problem with the logic behind the component though, just the display. So for something complex that has a bunch of logic behind it, it&amp;#x27;s a real nice idea to just be able to reuse that logic and whack some html and css over the top of it instead of having to read some 6 page doc every time you want to increase the width of a border or something.</text></comment>