Logo

dev-resources.site

for different kinds of informations.

How to Create Component Library Like Material UI or Mantine UI?

Published at
7/12/2023
Categories
library
component
mantine
materialui
Author
rijalghodi
Author
10 person written this
rijalghodi
open
How to Create Component Library Like Material UI or Mantine UI?

Creating a robust and reusable component library is a fundamental aspect of modern web development. If you've ever wondered how to develop component libraries like Material UI or Mantine UI from scratch, you're in the right place. In this article, we will delve into the essential steps for creating your own component library. So, let's embark on this journey!

📜 Table of Content


🛠️ Techs & Pre-Knowledge

In this tutorial, we will be utilizing the following technologies:

  • React.js
  • TypeScript
  • NPM
  • esbuild
  • Storybook
  • GitHub

Throughout this tutorial, we assume that you already possess a basic understanding of the following concepts. If you are unfamiliar with any of them, please refer to articles covering the topics below:

  • Basic React.js
  • Basic TypeScript
  • Basic GitHub
  • Basic NPM

🔭 Project Description

So, in this project, we will create a component library called cool-components that includes customizable components. To keep things simple, we will focus on creating just one component: the Button! Users will be able to adjust the color, variant, and size of the Button. Curious about how? Let's dive in!

Note: If you would like to see the final result of this project, please visit the following link.


👟 Init NPM Project

⚙️ Configure Typescript

🧱 Create Components

⛑️ Build

🚀 Publish into NPM

🤖 (Optional) Automate Publish Using Github

📚 (Optional) Add StoryBook

component Article's
30 articles in total
Favicon
Build a note app with JavaScript component.
Favicon
Key characteristic of Component-Based Architecture
Favicon
React Component Libraries: Overview of 19 Top Libs
Favicon
Styling Components in React 🧢
Favicon
Building a Seamless OTP Input Field in React: A Step-by-Step Guide
Favicon
MithrilJS component with state management
Favicon
[Off Topic] Nano introdução do framework Angular para Devs do back
Favicon
Comparing Vue Component Documentation tools
Favicon
Laravel 11 Custom Component File Structure
Favicon
Building Message Component in Vue3
Favicon
Aplicando paginação em um componente Select
Favicon
How much does it cost to repair an outdoor LED display?
Favicon
Global toast in Vue3
Favicon
Unveiling the Hidden Gem of React: The Power of Compound Components
Favicon
Controlled vs Uncontrolled Components in React
Favicon
React components -(Class component v/s function component)
Favicon
3 Ways to Create React Components with Bit
Favicon
Client or Server component ?
Favicon
Desenvolvimento de Componentes Assíncronos com Vue.js
Favicon
NAND Flash vs NOR Flash: Differences between them
Favicon
Link Component in React Router
Favicon
Guia de Components - para quem tem pressa!
Favicon
How to exchange data between Angular components
Favicon
Component Testing with Cypress and Reactjs
Favicon
React - Higher Order Components (HOC)
Favicon
How to Create Component Library Like Material UI or Mantine UI?
Favicon
Looking forward to adding Algolia's DOCSEARCH to Mantine DataTable
Favicon
Cypress Component Testing vs React Testing Library - the complete comparison
Favicon
Creating Custom Component for NPS Feedback
Favicon
Maximize your Angular code reusability using <NgTemplateOutlet>

Featured ones: