opize-design-system
Opize ํ๋ก์ ํธ ๊ฐ๋ฐ์ ์ํ ๋์์ธ ์์คํ
Overview
Opize Design System์ ๋์์ธ์ ๋ํ ๊ณ ๋ฏผ ๋์ , ์์ด๋์ด๋ฅผ ํ์ค๋ก ๋ง๋ค๋๋ก ๋์์ฃผ๋ Opize์ ๋์์ธ ์์คํ ์ ๋๋ค.
โ ๏ธ Work In Process - ๊ฐ๋ฐ์ค์ธ ํ๋ก์ ํธ
โ ๏ธ warn: ์ต๊ทผ์ v1 ๋ก ์ ๋ฐ์ดํธ๋๋ฉด์ ๋ง์ ๋ถ๋ถ์ด ๋ฌ๋ผ์ก์ด์. ๋ฌธ์๋ฅผ ์ ํ์ธํด์ฃผ์ธ์.
Opize Design System์ ํ์ฌ ๊ฐ๋ฐ์ค์ธ ํ๋ก์ ํธ๋ก, ์์ง์ ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์ถ์ฒํ์ง ์์์.
- ์ปดํฌ๋ํธ์ ์์ฑ๊ณผ ํ์ ์ด ์๊ณ ์์ด ๋ณ๊ฒฝ๋ ์ ์์ด์.
- ํด๊ฒฐ๋์ง ๋ชปํ ๋ฒ๊ทธ๋ก ์ธํด ์น๋ช ์ ์ธ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ด์.
- ์ฝ๋ ์ต์ ํ๊ฐ ์ด๋ฃจ์ด์ง์ง ์์ ํผํฌ๋จผ์ค์ ์ํฅ์ ๋ฏธ์น ์ ์์ด์.
- ์์ฑ & ๋ณด์๋์ง ์์ ๋ฌธ์๊ฐ ์กด์ฌํ ์ ์์ด์.
Quick Start
Install
> npm install opize-design-system styled-components @phosphor-icons/react
> yarn add opize-design-system styled-components @phosphor-icons/react
Setup
Opize Design System์ ๋ด๋ถ์ ์ผ๋ก Context๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด์ ๋ฐ๋ผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ <OpizeWrapper>
์ปดํฌ๋ํธ๋ฅผ ์ถ๊ฐํด์ผ ํฉ๋๋ค.
import React from 'react';
import ReactDOM from 'react-dom';
import { OpizeWrapper } from 'opize-design-system';
import App from './App';
ReactDOM.render(
<OpizeWrapper>
<App />
</OpizeWrapper>,
document.getElementById('root')
);
In NextJS
-
Page Router
(pages ํด๋๊ฐ ์๋ ๊ฒฝ์ฐ)๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ_app.tsx
ํ์ผ์<OpizeWrapper>
๋ฅผ ์ถ๊ฐํด์ฃผ์ธ์. -
App Router
(app ํด๋๊ฐ ์๋ ๊ฒฝ์ฐ)๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ app ํด๋ ๋ฐ๋ก ์๋์layout.tsx
ํ์ผ์<OpizeWrapper>
๋ฅผ ์ถ๊ฐํด์ฃผ์ธ์.
Usage
import { Button } from 'opize-design-system';
<Button>Button</Button>;
In NextJS
NextJS์ App Router์์๋ ์ ์ผ๋ก ์ฐ๊ฒฐ๋ ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ ์ ์์ด์. ์ด ๊ฒฝ์ฐ .์ ์ ์ธํ๊ณ ์ฌ์ฉํด์ฃผ์ธ์.
// ์ผ๋ฐ์ ์ธ React
import { Flex } from 'opize-design-system';
<Flex.Column>...</Flex.Column>;
// NextJS (App Router)
import { FlexColumn } from 'opize-design-system';
<FlexColumn>...</FlexColumn>;
Contact
ํ์ํ ๊ธฐ๋ฅ ์์ฒญ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ํ ์ง๋ฌธ, ๊ตฌํ ๋ฐฉ๋ฒ์ ๋ํ ์ง๋ฌธ ๋ฑ ์ด๋ ํ ๋ด์ฉ์ ์ฐ๋ฝ๋ ํ์ํฉ๋๋ค.
- ์ด๋ฉ์ผ - Opize: hello@opize.me
- ์ด๋ฉ์ผ - Hyuns(๊ฐ๋ฐ์): hyuns@hyuns.dev
- ๋์ค์ฝ๋: hyunsdev