Looking at websites such as Clerk, I began thinking that design engineers might be some kind of wizards. I wanted to understand how they do it, so I started reverse-engineering their components out of curiosity. One thing led to another, and I ended up building a small library of reusable, animated components based on what I found. The library is built in React and Framer Motion. I’d love to hear your feedback
The components looks really cool! However, you're using dark pattern by tricking the user with "Login to access the code" button. After I've gone through the process of signing up and logged in, I still couldn't access the component code. The same button then said "Unlock the code". Clicking on the button takes you to the Pricing page where you can pay $50 to see the component code. That's a dark pattern.
I appreciate you pointing that out. That’s not quite the experience I intended. The “Login to access the code” button should’ve been clearer upfront about requiring a purchase. I assumed the CTA button in the landing page would send that message. I'm planning to add FREE components as the library grows, so this is something I will revisit again.
This is just selling components someone else wrote, right?
Five years ago I could understand the appeal and appreciate the effort required. Today, it’s a matter of seeing others work, taking a screenshot, asking ai to recreate it, and then packaging it into a “library” and selling it for $50.
Maybe I’m alone in the sentiment, but it just rubs me the wrong way.
AI isn’t quite at the point where it can recreate high-quality UI components just from a screenshot. Everything in this library was built by hand — no AI, no copied code. Just pure design and engineering effort. There’s a lot of work you don’t see on the surface.
Any leading model. Ask it to generate the ui from the screenshot. Follow up and describe the required animations, and it will give you the css/js. Do it all the time.
Oh, I see. I haven't had much luck generating UI from screenshots, but describing an UI (or animations) clearly does usually get me 75% or more of the way there. I thought I might have been missing something critical.
I would (and do) pay for this type of UI library. Especially in design, everyone is inspired by everyone else, taking inspiration and ideas from elsewhere is normal... but branding this as "reverse engineered" makes it sound stolen. From the comments, it seems like you're actually just inspired by the work of others, as you've apparently written the code from the ground up, which means you're talented and capable. You should change the branding. Even a name change to something as simple as "Inspired UI" would be a meaningful improvement. I'd like to buy this but I'm not paying for stolen code, and as it's branded now, it seems like stolen code, and I'd have no plausible deniability if it turns out to be stolen code.
Honestly I came up with the name pretty quickly without really thinking about how it would sound to the end user. Definitely something I'll rethink; appreciate you pointing it out.
I use an older iPad and the page crashed so hard the Home button didn’t do anything for about 30 seconds. The iPad eventually turned off, because I had pressed the power button, to no avail, a couple of times.
Thank you! To be fair, there's plenty of room for optimisation. I have only tested on an M1 on Chrome. It's a tradeoff between looking cool and being performant
True — good optimization can get you both. It used to be way less performance, I already tried to optimise (at least until my machine was running it fine), but it seems like there's still much more that can be done
Ah yes, the classic "reverse engineering" (read: blatant design theft) turned into a quick profit scheme. Peak entrepreneurship.
Their X profile proudly displays "UK-based" while conveniently ignoring basic UK business regulations: no company information, no proper invoicing, no VAT details for B2B sales, and mysteriously missing business address requirements.
Looks suspiciously like someone running an under-the-table operation, courting legal trouble not just from the original designers they're "inspired by," but from Her Majesty's Revenue & Customs who tend to take a rather dim view of tax avoidance.
I agree with most of what you said, but just want to clarify for others that VAT registration is optional until revenue is high enough to reach the threshold.
Not being VAT registered when starting out is not necessarily a sign of a tax dodge.
This is correct. You do not need to register a business for VAT in the UK unless you hit a specific threshold of income (I think £80k was the figure when I last checked)
These are not required for self employed (nor is VAT registration up until certain revenue, as gp points out).
However given nature of business and potential liability, seems LTD company should be the route to take.
Thanks for pointing out the regulations part, I didn't realise I was giving that kind of impression. To be honest, it's my first time doing something like this, and I'm going to take the necessary steps as things grow.
Lot of people sell similar components (or give them for free), but what I would really be interested in is a course how to make them (properly, e.g. with a11y and performance considerations).
Especially in your case, since you are basically selling somebody else's work (the original design), which is a shitty thing to do. You could monetise this in a much more ethical way.
Actually the initial plan was for this to be a course of demonstrating how to build these components. Perhaps if there's enough demand, I might consider that. And I get that not everyone will agree with the approach, but I’m trying to be respectful about it.
I thought I was going to get the code, like the raw code, because I want to modify some styles/components. Instead, I received the component, and I can't make modifications. For example, the "DataFeedingIn" component; I want to be able to change the design, but I received the component without much capability for modification.
Did you not receive the Github invitation? If not, please go to the profile and enter your github username to send an invitation.
There are 3-4 components which haven't been synced yet (cannot copy the raw code from the site), one being DataFeedingIn component. You can still access the code through Github.
This is really impressive. As a portfolio alone, wow -- as a component set, fantastic.
Are these easy to include in Astro? I'd think so (avoiding React etc.) I am currently building with Astro and keeping things as minimal in terms of additional JS files etc as possible.
* The top of your site has what looks like the dot logo component, but showing numbers and with a Matrix-like effect. Can that be a component too?
* How customisable are these? I saw one comment saying they were not at all and the code was not modifiable. That's a deal-breaker: we all want our own spin on things, not to copy blindly.
I'm delighted to hear you like the library! The 'coming soon' components mean they haven't been packaged yet, and specifically the text-blur-reveal is tricky to do. You can, however, access the raw code on GitHub. Essentially you have 2 ways, either via the npm package, or copying the raw code. There are more components coming, one being the Matrix-like effect. I haven't worked with Astro before, so cannot give an input on that.
Every modern website has similar UI patterns. This is no different. All the code is originally written from scratch. You can’t copyright style, ideas, layouts, or vibes.
Would love if the site had some more information about how the components are implemented, eg does it use tailwind so they're easily modifiable, is there a light mode and a dark mode for each, can you update the animations to fit your needs, etc. They look good though!
Shoot, I forgot to add the FAQ section. Thank you! The components are built with Framer Motion and MUI (just for the sx prop). You will have access to the raw code, github repo and the npm package. If the component needs to be modified heavily, you can use the raw code. There's still more work that needs to be done to handle the full customisation via the npm package. I didn't use tailwind strictly because existing solutions all tend to use tailwind and shadcn, leaving other developers who don't use tailwind with not many options.
That's a great question. Right now, the components serve more as fancy decoration. But making the whole library more a11y-friendly is something I plan to do.
Took me a bit to figure out what the four circular icons on the bottom are for (magic wand, robot, envelope, crescent moon). I really wish they had tooltips.
Still doesn't make sense to me why the magic wand just points to the home page (I would have assumed it meant "edit this UI component), the robot links to a profile page (mine? requires login so didn't try), the envelope points to x.com (I expected an envelope for "email this to a friend"), and the crescent moon toggles between light/dark mode (obvious only in retrospect).
i love how that has a double meaning of "something so great everyone stops to applaud" and "something so bad the show cannot proceed". (and i'm amused that i cannot tell which one you mean here; ui animations are very polarising!)
This is fantastic work! They look beautiful. I hope you make lots of money from them because I know it's a lot of work. I'll be a customer in the near future for sure.
This looks like an AI generated project with a very little effort put into polishing what came out.
I mean, if you find people willing to pay you money then great, good for you.
But I don't see anything I wouldn't be able to find on sites like css tricks or tympanus for free.
And I don't even know what I'm paying for, there are no real examples on the page.
But I'll put it in my bookmarks. As soon as you have more components, and I'll find some spare time, I'm willing to give it a try and launch reverse-reverse-ui.com with all components available for free.
It’s such a hateful and mean comment. OP, please ignore this.
If you want to spend time building your own library, like OP has , and release it , god speed — that is if you can. In the meanwhile, OP actually spent energy to build and launch something, which is commendable.
Because someone who clearly violates even the most basic rules of doing business in the UK is trustworthy to "do it all by themselves" just because they say so. Because they clearly show a respect for the rules society put in place.
Is it just due to the sheer effort of implementing individual billing and fulfillment per component? If that's why, then I'll just buy the whole thing.
Appreciate the support! Yeah, it’s mostly the overhead of billing and managing access per component. If the library gets big enough and there's more demand for à la carte, I’d definitely consider revisiting it. Just keeping things simple for now so I can keep building.
"reverse-engineering their components out of curiosity" - Fantastic
sharing your learnings with the community - Fantastic
Attempting to make subscription money off the clones - Not so fantastic
Sorry... something about that last bit just really hit me wrong. Like when people make a paid Minecraft Tips "App" that's just content scraped from the web.
Yep, totally fair point and I get the skepticism. Just to be clear, some components are inspired, and some are also patterns and ideas I created myself along the way. There's a lot of work behind the scenes: recreating animations, building variants, styling, packaging for NPM etc. (the code is written using MUI, so it's all original). I'm trying to bring that level of polish to a wider set of devs who may not have the time to build it all from scratch, and I'm giving credits to the original inspirations where due.
Appreciate the feedback though; it's a valid concern.
on the minecraft tips app, you are paying money for something that saves you time.
on this one, you are paying for the same thing here, unless you wanna reimplement it by your own.
and there are lots of avenues to have an edge, such as support for other framework / libraries, better / more efficient implementation, more configurability / control on possible variants.
please don't shoot down people on their attempts to make a living on their efforts.
Exactly. Some people feel entitled to get everything for free. It's obvious a lot of effort went into building these. If someone does not see the value, no one forces him to pay.
Light joke/jab - if it was trivial to scrape and steal components from websites and resell them, surely someone will make a free reversereverseui component library
Jokes aside, I do think the OP does deserve credit for at least putting in the effort to reimplement ideas on the web even if the design ideas aren't theirs.
UI animations and needless "glitz" is inconsiderate of low-vision users, users who might have poor technical skills and who rely on UI consistency to accomplish tasks, users with low-spec hardware, users who are forced to use remote framebuffer protocols over low bandwidth connections, and of the environment (by way of increased processing power and electricity required).
I wish this setting was better-resoected. On Windows PCs, at least. I do not find that Chrome or CrEdge behave significantly differently when my OS settings telegraph my desire for reduced motion.
reply