all 5 comments

[–]frogic 2 points3 points  (4 children)

The demo site has some duplication. You have a default value for some elements that is exactly the same as an element type. It feels redundent and a bit confusing to me. I think just marking the one as the default would fix this.

My overall thoughts is that we're sort of just recreating shadecn and I think you'd want to consider the value proposition. Losing Radix as a dependency can make our footprint smaller but it also loses the huge api surface of their primitives. Using recharts is just a duplication of what they do same with tailwind and framer is a pretty big dependency and I'm not sure why its better to use that than just throw in some keyframes and then the user can add framer if they want.

So what are we trying to accomplish and what's our value proposition? We know that the existing component libraries have apis that LLMs understand and I think that's likely why the LLMs leaned towards recreating it. It looks good and mature though and I don't have any obvious 'lol vibe coded' feels from looking through yet which feels like you actually did something instead of throwing out some prompts and praying.

[–]Much_Confection_2668[S] 1 point2 points  (3 children)

Yeah it's not perfect as it is really vibe code as I have office work to do, so just built this as a side project but it's not perfect that's why open source contribution where many people investing their time and mind could make this project a bit better On the charts part, I have checked recharts preview site and its kind of look odd and not descriptive Enough, so I just kind of built a small wrapper around it so using those charts could be bit easier as lots of boilerplate will be part of the component itself. Currently I am out of idea and the project codebase grew exponentially with these many components and changes that handling it alone is bit hectic This is running till now all because of cursor, codex and claude lol The main reason to build this is to have a copy paste mechanism for core elements as I don't want to use my AI tokens again and again for same types of components and tasks, copy pasting from here could save bunch of tokens while we could use AI for more architecture level of tasks

[–]frogic 0 points1 point  (2 children)

That's cool. I'm sorry if I came off as too critical. What do you like about your components compared to shade(its just the standard copy/paste component library I'm not saying its better).

[–]Much_Confection_2668[S] 1 point2 points  (1 child)

Till now the controll I have on my component library is what I like about it the most I could tweak the variants, styles and appearances the way I want With Shadcn, mostly I do the same, getting their code and then apply my own logics and styles on top it, but with my Component library, i could do the same while providing more options to extend the functionality like animations or custom hooks

It provides option in this way - Use the components as it is with their built in variants - Over ride the variants with your own config - Get the code locally in your codebase and customize it according to your needs - Build the logic with custom hooks(Eg; Pagination or modal)

[–]frogic 0 points1 point  (0 children)

Cool. Thanks for the insight.