Yeah, ok. So your team has a bit of a challenge on your hands. IF and this is a MASSIVE IF I had the time, team, money and I was in your shoes then I'd probably try to use a mix of these two approaches: Come up with a solid Design System using something like Figma which outlines all the components including colours, typography, spacing, interactions, etc across all viewports you'll be targetting. Have a look at different ways that you can share the Design Systems non-component parts across React, Vue, Angular and React Native. For example, this could be CSS-in-JS variables. Now this is where it gets fun... (Option 1) Once you have the core Design System parts shared across all platforms, look at building the componentry and implementing the interactions. I'd be seriously thinking about how dumb I make the individual components because the dumber they are the easier it'll be to share the bulk of the markup across at least React, Vue and Angular. Then you focus on React Native. Having a fleshed out Design System would also mean that you have a solid reference point to keep all components/interactions in check. Now, depending on your team, and how large your Design System is, you could knock out the bulk of the dumb componentry fairly quickly. Then look at implementing the library/framework specifics (ie. onClick vs v-on vs (click) vs Pressable, etc). You'd want to have someone that's a lead or fairly senior that is across React, Vue, Angular and React Native to keep a hold of the overall quality. Mind you, these folks aren't easy to find. For me, its taken me over 10 years to go around the block and I'm only now touching React Native. I'd be seriously looking at the team composition because unless the folks know what they're doing in their respective fields of expertise, then you will lose/waste time with slow downs/quality issues, etc. Just as a reference, one of the most efficient projects I've been on was a 3 month contract where we built hundreds of components for over 900 new pages, for a major bank re-brand. The team consisted of 1x Lead Frontend Developer, 3x Senior Frontend Developers, 2x UI designers, 2x UX designers, 2x Info Architects?, 1x PM, 1x BA - thats the type of team you want. Just in your case, you'd want the Senior FEDs to be specialised in each framework/lib. What you want to do is do-able but you need the right resources for it not to turn to absolute ****. If you have an existing team, as a trial run, I'd honestly suggest doing a 2 week hackathon on a subset of the design system and see what happens. Just to summarise: 0. (Probably the most important bit) Review your team, skillsets, expertise with the aim being that everyone on the team is fairly senior and there's a lead to pull it all together Limit and flesh out the Design System Figure out how to share the bulk of the non-markup pieces of the Design System across React, Vue, Angular and React Native (CSS-in-JS maaaybe?) Build out the dumb componentry and try to share as much as you can among React, Vue, Angular... and handle React Native separately Once you've got the dumb componentry, switch focus to the interactive parts. Aim to get at least part of your Design System out for feedback sooner rather than later. And/OR (Option 2) Now this is something I haven't tried myself but might be worth exploring depending on how much time/money you have. Steve from Builder.io has two Youtube views and some blog posts about them training their own models to help with component generation. AGAIN, IF you have the time/money. It might be something worth exploring. Could you train/build your own model to convert whatever component from your Design System into which ever target framework/lib? Maybe? https://www.youtube.com/watch?v=bRFLE9qi3t8&t=2s https://www.youtube.com/watch?v=fCUkvL0mbxI https://www.builder.io/blog/build-ai https://www.builder.io/blog/train-ai Anyways, good luck. Project sounds challenging but if I was in your shoes. I'd take it on. If nothing else, you'll come away with a lot of lessons. haha PS. Keep me update if you do go ahead. Might have some more tips if you flick me a message. Answer from evilish on reddit.com
Reddit
reddit.com › r/reactjs › recommendations on reusable component framework / libs?
r/reactjs on Reddit: Recommendations on reusable component framework / libs?
December 26, 2023 -
Hi all,
Our team is tasked with building out a components platform that supplies all UI to other frontends, regardless of framework (mainly Angular, Vue, and React Native). We've looked into some frameworks like Stencil.js, Lit, etc. and actually prototyped a few by exporting to npm, but it'd be great to see if anyone here has experience with what they've gone with and how it's scaled to other teams. The challenge is more so the React Native part actually, we've had a few discussions on how to tackle this.
Apologies if this has been asked before, if so, please link me since I couldn't find via Reddit search. Thanks!
Top answer 1 of 10
13
Run. Run as fast and as far as you can. Your project will fail, you will be sacked and before that happens you will wish your managers had never been born. Building a component library is already a massive challenge where the projects that are supposed to use it will inevitably need you months or even years before you can possibly deliver leading to them developing their own components. What they're asking you to do is an order of magnitude more dumb. The app Dev teams will hate you, they will talk (justified) shit about you to their managers. It's a recipe for disaster.
2 of 10
11
Yeah, ok. So your team has a bit of a challenge on your hands. IF and this is a MASSIVE IF I had the time, team, money and I was in your shoes then I'd probably try to use a mix of these two approaches: Come up with a solid Design System using something like Figma which outlines all the components including colours, typography, spacing, interactions, etc across all viewports you'll be targetting. Have a look at different ways that you can share the Design Systems non-component parts across React, Vue, Angular and React Native. For example, this could be CSS-in-JS variables. Now this is where it gets fun... (Option 1) Once you have the core Design System parts shared across all platforms, look at building the componentry and implementing the interactions. I'd be seriously thinking about how dumb I make the individual components because the dumber they are the easier it'll be to share the bulk of the markup across at least React, Vue and Angular. Then you focus on React Native. Having a fleshed out Design System would also mean that you have a solid reference point to keep all components/interactions in check. Now, depending on your team, and how large your Design System is, you could knock out the bulk of the dumb componentry fairly quickly. Then look at implementing the library/framework specifics (ie. onClick vs v-on vs (click) vs Pressable, etc). You'd want to have someone that's a lead or fairly senior that is across React, Vue, Angular and React Native to keep a hold of the overall quality. Mind you, these folks aren't easy to find. For me, its taken me over 10 years to go around the block and I'm only now touching React Native. I'd be seriously looking at the team composition because unless the folks know what they're doing in their respective fields of expertise, then you will lose/waste time with slow downs/quality issues, etc. Just as a reference, one of the most efficient projects I've been on was a 3 month contract where we built hundreds of components for over 900 new pages, for a major bank re-brand. The team consisted of 1x Lead Frontend Developer, 3x Senior Frontend Developers, 2x UI designers, 2x UX designers, 2x Info Architects?, 1x PM, 1x BA - thats the type of team you want. Just in your case, you'd want the Senior FEDs to be specialised in each framework/lib. What you want to do is do-able but you need the right resources for it not to turn to absolute ****. If you have an existing team, as a trial run, I'd honestly suggest doing a 2 week hackathon on a subset of the design system and see what happens. Just to summarise: 0. (Probably the most important bit) Review your team, skillsets, expertise with the aim being that everyone on the team is fairly senior and there's a lead to pull it all together Limit and flesh out the Design System Figure out how to share the bulk of the non-markup pieces of the Design System across React, Vue, Angular and React Native (CSS-in-JS maaaybe?) Build out the dumb componentry and try to share as much as you can among React, Vue, Angular... and handle React Native separately Once you've got the dumb componentry, switch focus to the interactive parts. Aim to get at least part of your Design System out for feedback sooner rather than later. And/OR (Option 2) Now this is something I haven't tried myself but might be worth exploring depending on how much time/money you have. Steve from Builder.io has two Youtube views and some blog posts about them training their own models to help with component generation. AGAIN, IF you have the time/money. It might be something worth exploring. Could you train/build your own model to convert whatever component from your Design System into which ever target framework/lib? Maybe? https://www.youtube.com/watch?v=bRFLE9qi3t8&t=2s https://www.youtube.com/watch?v=fCUkvL0mbxI https://www.builder.io/blog/build-ai https://www.builder.io/blog/train-ai Anyways, good luck. Project sounds challenging but if I was in your shoes. I'd take it on. If nothing else, you'll come away with a lot of lessons. haha PS. Keep me update if you do go ahead. Might have some more tips if you flick me a message.
Pluralsight
pluralsight.com › courses › react-creating-reusable-components
Creating Reusable React Components
In this course, Creating Reusable React Components, you'll explore over 50 decisions to consider when designing, creating, and publishing reusable React components, including atomic design, documentation generation, styling, theming, testing, packaging, and publishing. By the end of this course, you'll know how to publish and maintain your own reusable component library.
Which is the best React component library?
I started building my own component library about a year ago. You can check it out here if you want: https://rewind-ui.dev/ It's built on top of TailwindCSS and CVA. I have implemented some components that you might not find on other component libraries like the Sidebar: https://rewind-ui.dev/components/sidebar Other than that I believe that the most complete library out there is Mantine, but I haven't used it with TailwindCSS yet. More on reddit.com
Which is the go-to React UI library in 2024?
I don't think we have a go-to. Every time this question is asked you get about 8 replies with a strong percentage of upvotes More on reddit.com
Component Library Recommendations
Material UI will be the best as you mentioned Table , the MUI Datagrid is well designed and feature rich More on reddit.com
What is your favourite React component library and why?
Still shadcn. Great out the box, easily customisable, tailwind is so easy to make updates to things with the themes and extensions etc. less a component library than a workflow. More on reddit.com
Videos
07:20
5 New UI/UX Libraries & ReUsable Components For React and NextJS 2024.
19:08
Build a Reusable Component in React (Shadcn/ui, Tailwind) - YouTube
27:41
Creating Reusable Components…That Are Actually Reusable - Cory ...
20:50
Build a Component Library for React with Typescript [2021] - YouTube
16:59
how to create react component library - YouTube
18:44
React Styled Components - The Complete Guide - YouTube
Reactnativereusables
reactnativereusables.com
React Native Reusables
Bringing shadcn/ui to React Native. Beautifully crafted components with Nativewind or Uniwind, open source, and almost as easy to use.
CTF Assets
assets.ctfassets.net › otcg69yadk3e › 2vQ7FxW1Ow2wQwmM02y6GG › 347338f925e7a42375655c7917351c5c › Building_a_Reusable_Component_Library_in_React.pdf pdf
Reusable Component Library in React Reduce, reuse… React!
Reusable Component Library · in React · Reduce, reuse… React · Who is this human · Connor Wilson · Front-end @ Tulip, Formerly Mappedin, recovering freelancer · Instructor @ Bridge · Socials on cwlsn.com, me@cwlsn.com · Cat whisperer · What is this talk
GitHub
github.com › rheera › component-library
GitHub - rheera/component-library: A reusable component library made with React.
A reusable component library made with React. Contribute to rheera/component-library development by creating an account on GitHub.
Author rheera
Prismic
prismic.io › blog › react-component-libraries
Best 19 React UI Component Libraries in 2026
August 19, 2024 - Reusable Components: Next UI provides a comprehensive set of reusable UI components. These components can be easily integrated into your React application, reducing development time.
GitHub
github.com › coryhouse › ps-react
GitHub - coryhouse/ps-react: Reusable React components built in "Creating Reusable React Components" on Pluralsight
Starred by 137 users
Forked by 70 users
Languages JavaScript 96.4% | HTML 1.9% | CSS 1.7% | JavaScript 96.4% | HTML 1.9% | CSS 1.7%
DEV Community
dev.to › joshuawasike › design-systems-in-action-building-a-reusable-component-library-with-react-3peb
Design Systems in Action: Building a Reusable Component Library with React - DEV Community
July 24, 2024 - Creating a scalable design system is essential for maintaining consistency, improving collaboration, and enhancing the efficiency of development teams. This article will guide you through the process of building a reusable component library with React, integrating with Storybook for documentation, and ensuring consistency across projects.
Bitstack
blog.bitsrc.io › turning-your-component-library-into-a-component-playlist-with-bit-a8cae43f0f9d
React Component Library: Share and Manage Reusable Components
May 11, 2023 - To improve this workflow you can use open-source project Bit to provide discoverability and usability for individual components from your library, without having to refactor or change the library itself. Here is how. ... Before diving in, let’s view a quick example from GitHub. Here’s a the react-animations React library containing a verity of neat animations. The repo looks like this: https://github.com/FormidableLabs/react-animations · Using Bit, and in about 30 minutes (no refactoring at all), we’ve published a collection of the reusable components from the library, which looks like this:
GitHub
github.com › brillout › awesome-react-components
GitHub - brillout/awesome-react-components: Curated List of React Components & Libraries. · GitHub
... fireproof - demo - docs Pure ... ... synergies - docs A performant and distributed context-state library for creating reusable React state logic by synergyzing atomar context pieces....
Starred by 47.2K users
Forked by 3.8K users
ButterCMS
buttercms.com › blog › building-reusable-components-using-react
Building reusable components using React | ButterCMS
July 16, 2025 - Extracting this logic from a component makes it much easier to make it reusable. Consider the scenario where you have a button that does an API call. The code for the button component could be the following: import React from "react"; import doAPICall from "../api" const SaveButton = () => { return ( <button onClick={() => { doAPICall(); }} > Save </button> ); } export default SaveButton
AlmaBetter
almabetter.com › bytes › tutorials › reactjs › reusable-components-in-react
Building Reusable Components in React JS
Designing reusable components involves ... and reusing components is made easy in ReactJS through the use of npm packages, component libraries, and code repositories....