Writing UI 컴포넌트 쇼케이스

MDX에서 사용할 수 있는 아름다운 UI 컴포넌트들을 살펴보세요

Writing UI 컴포넌트 쇼케이스

MDX 문서 작성을 위한 아름다운 UI 컴포넌트들을 소개합니다. 이 페이지에서는 각 컴포넌트의 실제 사용 예시를 확인할 수 있습니다.

1. Callout 컴포넌트

다양한 타입의 메시지를 표시하는 데 사용됩니다.

정보

이것은 정보를 제공하는 Callout입니다. 사용자에게 도움이 되는 정보를 전달할 때 사용합니다.

주의사항

이것은 주의사항을 알리는 Callout입니다. 사용자가 주의해야 할 점을 강조할 때 사용합니다.

오류

이것은 오류를 알리는 Callout입니다. 문제가 발생했을 때 사용자에게 알릴 때 사용합니다.

성공

이것은 성공을 알리는 Callout입니다. 작업이 성공적으로 완료되었을 때 사용합니다.

참고

이것은 참고사항을 제공하는 Callout입니다. 추가적인 정보나 팁을 제공할 때 사용합니다.

2. CodeBlock 컴포넌트

코드를 아름답게 표시하고 복사 기능을 제공합니다. 일반 마크다운 코드 블록(```) 을 사용하면 자동으로 CodeBlock 컴포넌트로 렌더링됩니다.

tsx
import React from 'react';

interface ButtonProps {
  children: React.ReactNode;
  onClick?: () => void;
  variant?: 'primary' | 'secondary';
}

export function Button({
  children,
  onClick,
  variant = 'primary',
}: ButtonProps) {
  return (
    <button
      onClick={onClick}
      className={`px-4 py-2 rounded ${
        variant === 'primary'
          ? 'bg-blue-500 text-white'
          : 'bg-gray-200 text-gray-800'
      }`}
    >
      {children}
    </button>
  );
}
bash
npm install @/components/writing-ui
# 또는
yarn add @/components/writing-ui

3. Steps 컴포넌트

단계별 가이드를 만들 때 사용합니다.

1

프로젝트 초기화

새로운 Next.js 프로젝트를 생성합니다. bash npx create-next-app@latest my-project

3

의존성 설치

필요한 패키지들을 설치합니다. ```bash cd my-project npm install lucide-react

</Step>

{' '}
<Step title='컴포넌트 설정'>
writing-ui 컴포넌트를 프로젝트에 복사합니다.
<Callout type='info' title='팁'>
  components/writing-ui 폴더를 프로젝트 루트의 components 폴더에 복사하세요.
</Callout>
</Step>

<Step title='사용 시작'>
  이제 MDX 파일에서 컴포넌트를 Import 없이 사용할 수 있습니다! ```mdx
  <Callout type='success' title='완료!'>
    설정이 완료되었습니다.
  </Callout>

4. Tabs 컴포넌트

여러 내용을 탭으로 구분해서 표시할 때 사용합니다.

tsx
import React from 'react'

function App() {
  return (
    <div>
      <h1>Hello React!</h1>
      <button onClick={() => alert('Hello!')}>클릭하세요</button>
    </div>
  )
}

export default App

5. Card 컴포넌트

정보를 카드 형태로 표시할 때 사용합니다.

6. Blockquote 컴포넌트

인용문을 표시할 때 사용합니다.

Stay hungry, stay foolish.

스티브 잡스Stanford Commencement Address, 2005

대부분의 사람들은 기술의 변화를 과대평가하고, 장기적 영향을 과소평가한다.

빌 게이츠

7. Badge 컴포넌트

라벨이나 상태를 표시할 때 사용합니다.

기본보조성공경고위험외곽선
작은 크기중간 크기큰 크기

8. Reference 컴포넌트

참고자료를 표시할 때 사용합니다.

컴포넌트 조합 예시

여러 컴포넌트를 조합해서 사용하는 예시입니다.

시작하기

이 섹션에서는 여러 컴포넌트를 조합해서 사용하는 방법을 보여드립니다.

1

API 키 설정

먼저 환경 변수에 API 키를 설정합니다.

bash
NEXT_PUBLIC_API_KEY=your_api_key_here
보안 주의사항

API 키는 절대 클라이언트 사이드에 노출되어서는 안 됩니다.

2

API 호출

다음 코드를 사용해서 API를 호출합니다.

typescript
const response = await fetch('/api/data', {
  headers: {
    'Authorization': 'Bearer ' + process.env.API_KEY
  }
})

9. 표 (Table)

MDX에서 GitHub Flavored Markdown 표 구문을 사용할 수 있습니다.

기본 표

컴포넌트타입설명상태
Calloutinfo정보 전달용✅ 완료
CodeBlocksyntax코드 블록✅ 완료
Stepsnavigation단계별 가이드✅ 완료
Badgestatus상태 표시✅ 완료

정렬된 표

왼쪽 정렬가운데 정렬오른쪽 정렬
왼쪽가운데오른쪽
LeftCenterRight
데이터 1데이터 2데이터 3

복잡한 표

기능지원 여부버전비고
표 기본 구문v1.0GitHub Flavored Markdown
셀 정렬v1.0왼쪽, 가운데, 오른쪽
HTML 태그v1.0code, bold, italic
복합 컨텐츠v1.1링크, 이미지 등
표 사용 팁
  • 파이프(|)로 열을 구분합니다 - 헤더 아래 두 번째 줄로 정렬을 설정합니다 - :--- (왼쪽), :---: (가운데), ---: (오른쪽) - 표 안에서도 다른 마크다운 구문을 사용할 수 있습니다
완료!

이제 모든 Writing UI 컴포넌트를 사용할 수 있습니다. 이 컴포넌트들을 활용해서 아름다운 문서를 작성해보세요!


더 많은 컴포넌트와 사용 예시는 @/components/writing-ui 폴더에서 확인할 수 있습니다.