Skip to content

DesignSystemLab/design-system

Repository files navigation

J Design System

jds-thumb

Introduction

πŸ’Ž J Design System은 μ—¬λŸ¬ μž¬μ‚¬μš© κ°€λŠ₯ν•œ 핡심적인 UI μ»΄ν¬λ„ŒνŠΈλ₯Ό λ‹΄μ•„λ‚΄κ³  μžˆλŠ” Reactμ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” Design System UI Library μž…λ‹ˆλ‹€. λΉ λ₯΄κ³  μ‰½κ²Œ μ μš©ν•  수 μžˆλŠ” λ‹¨μˆœν•œ μΈν„°νŽ˜μ΄μŠ€λ₯Ό 지ν–₯ν•˜μ˜€μœΌλ©°, μ›Ή 접근성을 μ΅œλŒ€ν•œ μ€€μˆ˜ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

Why you should use J Design System

  • ⚑️ Compound Component ꡬ쑰와 일관성 μžˆλŠ” 속성 ꡬ쑰λ₯Ό 톡해 κ°„κ²°ν•œ μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€λ₯Ό μœ μ§€ν•˜λ„λ‘ ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • 🌈 as 속성을 톡해 μ»΄ν¬λ„ŒνŠΈ λ‹€ν˜•μ„±μ„ μ§€μ›ν•˜λ„λ‘ κ΅¬ν˜„ν–ˆμŠ΅λ‹ˆλ‹€.
  • ⚠️ μ›Ή 접근성을 κ³ λ €ν•΄ μ μ ˆν•œ html role을 μ‚¬μš©ν•˜μ—¬ μ»΄ν¬λ„ŒνŠΈλ₯Ό κ΅¬μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • 🧩 λ‹€μ–‘ν•œ μ‚¬μš© ν™˜κ²½μ„ κ³ λ €ν•΄ cjs, esm λͺ¨λ“ˆμ„ μ§€μ›ν•˜λ„λ‘ λ²ˆλ“€λ§μ„ κ΅¬μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • ⌨️ Uncontrolled Component νŠΉμ„±μ„ ν™œμš©ν•΄ μΈν„°λž™μ…˜μ΄ ν•„μš”ν•œ μ»΄ν¬λ„ŒνŠΈλ“€μ„ μ§€μ›ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • πŸ’« Form κ΄€λ ¨ μ»΄ν¬λ„ŒνŠΈλ“€μ€ React Hook Form을 μ§€μ›ν•©λ‹ˆλ‹€.

Project Overview

Installation

πŸ’… Emotion ν™˜κ²½μ—μ„œ λ™μž‘ν•˜κΈ° λ•Œλ¬Έμ— emotion dpendencyκ°€ ν•„μš”ν•©λ‹ˆλ‹€.
React UI Component

npm install --save @jdesignlab/react @emotion/react@^11

SVG Icons

npm install --save @jdesignlab/react-icons @emotion/react@^11

μ•„λž˜μ™€ 같이 ν•„μš”ν•œ UI μ»΄ν¬λ„ŒνŠΈλ₯Ό importν•˜μ—¬ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 각 μ»΄ν¬λ„ŒνŠΈμ˜ READMEλ₯Ό μ°Έκ³ ν•˜μ‹œλ©΄ μžμ„Έν•œ μΈν„°νŽ˜μ΄μŠ€μ™€ μ‚¬μš©λ²•μ„ ν™•μΈν•˜μ‹€ 수 μžˆμŠ΅λ‹ˆλ‹€. μ•„λž˜ 링크λ₯Ό ν΄λ¦­ν•˜μ‹œλ©΄ 각 μ»΄ν¬λ„ŒνŠΈμ˜ README둜 μ΄λ™ν•˜μ‹€ 수 μžˆμŠ΅λ‹ˆλ‹€.

import { Text, TextInput, Button, Modal, ... } from '@jdesignlab/react';
import {Mail, Bell, Book, ...} from '@jdesignlab/react-icons'

Components

Box

Button

Card

Checkbox

Drawer

Dropdown

Flex

Input

Modal

Popover

Radio

Select

Stack

Tabs

Text

Textarea

Tooltip

Contributors

yondo123
yoycode
tooooo1 helen

Convention

Commit Convention

rule description
✨ Feat μƒˆλ‘œμš΄ κΈ°λŠ₯을 μž‘μ„±ν•©λ‹ˆλ‹€.
🎨 Style μ½”λ“œ μŠ€νƒ€μΌ κ·œμΉ™μ„ μˆ˜μ •ν•©λ‹ˆλ‹€.
βž– Remove μ‚¬μš©λ˜μ§€ μ•ŠλŠ” 파일 λ˜λŠ” μ½”λ“œλ₯Ό μ‚­μ œν•©λ‹ˆλ‹€.
πŸ—οΈ Structure ν”„λ‘œμ νŠΈ ꡬ쑰λ₯Ό λ³€κ²½ν•©λ‹ˆλ‹€.
πŸ”§ Modify κΈ°λŠ₯에 영ν–₯을 주지 μ•ŠλŠ” μ½”λ“œλ₯Ό μˆ˜μ •ν•©λ‹ˆλ‹€.
πŸ› Fix κΈ°λŠ₯의 문제 사항 λ˜λŠ” μ „λ°˜μ μΈ ν”„λ‘œμ νŠΈ λ‚΄ 이슈λ₯Ό ν•΄κ²°ν•©λ‹ˆλ‹€.
♻️ Refactor μ„±λŠ₯μ΄λ‚˜ μ½”λ“œμ˜ ꡬ쑰λ₯Ό κ°œμ„ ν•©λ‹ˆλ‹€.
πŸ“ Doc λ¬Έμ„œλ₯Ό μž‘μ„±ν•˜κ±°λ‚˜ νŽΈμ§‘ν•©λ‹ˆλ‹€.
🀑 Chore μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ™μž‘μ— 영ν–₯을 주지 μ•ŠλŠ” μ½”λ“œλ“€μ„ μˆ˜μ •ν•©λ‹ˆλ‹€. (package version, configure)
πŸš€ Deploy νŒ¨ν‚€μ§€λ₯Ό λ°°ν¬ν•©λ‹ˆλ‹€.
πŸ§ͺ Test ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μž‘μ„±ν•©λ‹ˆλ‹€.
πŸ’„ Ui μŠ€νƒ€μΌλ§μ„ μœ„ν•œ μ½”λ“œλ₯Ό μˆ˜μ •ν•˜κ±°λ‚˜ μΆ”κ°€ν•©λ‹ˆλ‹€.