{"id":2308,"date":"2026-01-22T10:59:53","date_gmt":"2026-01-22T09:59:53","guid":{"rendered":"https:\/\/www.strehle.de\/tim\/?p=2308"},"modified":"2026-01-22T10:59:53","modified_gmt":"2026-01-22T09:59:53","slug":"paul-hebert-the-incredible-overcomplexity-of-the-shadcn-radio-button","status":"publish","type":"post","link":"https:\/\/www.strehle.de\/tim\/weblog\/archives\/2026\/01\/22\/paul-hebert-the-incredible-overcomplexity-of-the-shadcn-radio-button\/","title":{"rendered":"Paul Hebert: The Incredible Overcomplexity of the Shadcn Radio Button"},"content":{"rendered":"\n<p>Paul Hebert \u2013 <a href=\"https:\/\/paulmakeswebsites.com\/writing\/shadcn-radio-button\/\">The Incredible Overcomplexity of the Shadcn Radio Button<\/a>:<\/p>\n\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201eTo understand how our radio buttons work I need to understand two separate component libraries and hundreds of lines of React.\u201c<\/p>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Paul Hebert \u2013 The Incredible Overcomplexity of the Shadcn Radio Button: \u201eTo understand how our radio buttons work I need to understand two separate component libraries and hundreds of lines of React.\u201c<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_share_on_mastodon":"0"},"categories":[1],"tags":[10],"class_list":["post-2308","post","type-post","status-publish","format-standard","hentry","category-weblog","tag-links"],"share_on_mastodon":{"url":"https:\/\/mastodon.social\/@tistre\/115938164291721361","error":""},"_links":{"self":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts\/2308","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/comments?post=2308"}],"version-history":[{"count":1,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts\/2308\/revisions"}],"predecessor-version":[{"id":2309,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts\/2308\/revisions\/2309"}],"wp:attachment":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/media?parent=2308"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/categories?post=2308"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/tags?post=2308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}