sohyeon kim

[CSS/Next] MUI(Material-UI) VS Shadcn UI : UI 라이브러리 비교 본문

CSS

[CSS/Next] MUI(Material-UI) VS Shadcn UI : UI 라이브러리 비교

aotoyae 2024. 12. 2. 12:18
728x90

 

 

💡 MUI & Shadcn UI 중 design system 선택하기

 

🔵 MUI : Google의 Material Design 가이드라인을 기반으로 한 React UI 라이브러리

  • Material Design 기반 : 구글의 디자인 가이드 라인을 기반으로 한 스타일링으로, 일관되고 직관적인 UI 구현 가능
  • 컴포넌트 중심 : 버튼, 네비게이션 바 등 다양한 사전 정의된 컴포넌트 제공
  • CSS-in-JS 방식 : 기본적으로 @emotion/react를 사용하여 CSS-in-JS 스타일링 제공
  • 반응형 디자인 지원 : 반응형 그리드 시스템과 스타일링 도구를 제공하여 다양한 화면 크기의 애플리케이션을 쉽게 구축 가능

많은 컴포넌트가 준비되어 있어 빠른 개발이 가능하고, 유지 보수에 용이하며, 커뮤니티가 활발하지만

일부 컴포넌트가 프로젝트 파일의 크기를 늘릴 수 있어 최적화를 고려해야 하고, 커스터마이징이 다소 복잡할 수 있다.

 

➡️ 일관된 UI/UX와 빠른 개발이 필요한 프로젝트에서 강력한 도구,

개발자가 디자인에 덜 신경 쓰고 구현에 집중할 수 있게 도와준다.

 

⚫️ Shadcn UI : React와 Tailwind CSS를 기반으로 한 현대적이고 모듈화된 UI 컴포넌트 라이브러리

  • Tailwind CSS 통합 : Tailwind CSS를 기본 스타일링으로 사용해 직관적이고 유연한 커스터마이징을 지원
  • 오픈 소스 및 유연성 : 컴포넌트의 소스 코드를 프로젝트에 복사해서 사용하는 방식이 특징, 기존 UI 라이브러리보다 스타일과 기능을 완벽하게 제어 가능
  • 컴포넌트 중심 설계 : 다양한 범용 컴포넌트(Button, Card, Modal 등)와 고급 컴포넌트(Toast, Tooltip 등)를 제공.
  • 일관된 디자인 언어 : 디자인 시스템 기반의 일관된 UI 컴포넌트
  • No Vendor Lock-in : 라이브러리 종속성을 최소화하여 필요에 따라 컴포넌트를 커스터마이징하거나 독립적으로 사용 가능
  • React와 Next.js 친화적 : React 및 Next.js와의 완벽한 호환성을 목표로 설계

Tailwind 와 친화적이고 오픈 소스로 공개된 코드의 컴포넌트를 복사해 프로젝트에 자유롭게 통합할 수 있다.

또한 패키지를 프로젝트에 포함시키는 대신, 코드를 복사하므로 의존성을 최소화하며,

모든 컴포넌트의 스타일과 동작을 완전히 제어할 수 있어 프로젝트의 요구사항에 맞게 변경이 가능하다.

하지만 컴포넌트를 복사해 사용하는 방식으로 라이브러리의 업데이트를 자동으로 반영할 수 없으며,

Tailwind CSS 에 대한 이해가 필요하고, 상대적으로 작은 커뮤니티와 리소스를 갖고 있다.

 

➡️ 디자인 및 코드 제어가 중요한 프로젝트에서 유용

 

 

 

🔗 https://f-lab.kr/insight/starting-frontend-development-with-nextjs-and-mui

 

Next.js와 MUI를 활용한 프론트엔드 개발 시작하기

Next.js와 MUI를 활용한 프론트엔드 개발의 기본 개념, 설정 방법, UI 구성, ESLint와 Prettier 적용 방법, 그리고 테스트 코드 작성의 중요성에 대해 설명합니다.

f-lab.kr

🔗 https://zombiecodingfactory.tistory.com/20

 

[React] Next.js에 대해 알기 2부 (TailWind CSS, Shadcn UI)

들어가기에 앞서 Next.js 1부에 이어 2부를 써본다. 1부에서 놓친점이 있다면 Next.js가 버전마다 큰 차이가 있다는 것을 늦게 확인했다는 점이다. 1부와는 다르게 이번엔 Next.js 14버전을 기준으로 디

zombiecodingfactory.tistory.com

🔗 https://velog.io/@ckstn0777/shadcnui-%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%9C-%EA%B3%B5%EC%9C%A0-UI-%EC%BB%B4%ED%8F%AC%EB%84%8C%ED%8A%B8-%EC%82%AC%EC%9A%A9-%EA%B2%BD%ED%97%98

 

shadcn/ui 를 이용한 공유 UI 컴포넌트 사용 경험

공유 UI 컴포넌트를 가져다가 사용하는 방법에는 어떤 것들이 있을까요? 이에 대해 알아보고 Radix-ui와 이를 기반으로 만들어진 shadcn/ui 를 선택한 이유와 간단한 사용 방법에 대해 알아봤습니다.

velog.io

 

 

 

728x90
반응형