reopt designreopt design
DocsExploreToolsPricingBuilder
시작하기
개요
시작하기
Next.js 설치
Private install
핵심 개념
아키텍처
컴포지션 패턴
접근성
키보드 패턴
스타일링
테마 시스템
고급 패턴
구축·운영
Skills
AI 연동
CLI (opt surface add)
의존 그래프
도구
Canvas 카탈로그
Theme Builder
Form Builder
템플릿
템플릿
릴리즈
릴리즈 노트
Oopt-ui
reopt designreopt design

AI 시대를 위한 디자인 시스템

  • 문서
  • 가격
  • 릴리즈 노트
  • GitHub
  • 서비스 약관
  • 개인정보처리방침

© 2026 reopt-ai. All rights reserved.

Sidebar

shell

접기/펼치기를 지원하는 compound 사이드바. Header/Content/Footer 구조 + Group/Item으로 네비게이션 구성. Ctrl+[ 단축키.

컴포넌트 의존 관계

깊이
▲ USED BY (1)▼ USES (1)app-shellSidebarsidebar-nav
100%

실전 패턴 — 접기/펼치기 + 유저 프로필

MyApp
메뉴

시스템
김

김수현

sh@example.com

대시보드

Ctrl+[ 로 사이드바 토글

AppShell + Sidebar 조합

MyApp
Pro
워크스페이스홈인박스검색

프로젝트프로덕션개발 서버

홈

AppShell.Header + AppShell.Sidebar + AppShell.Content 조합

메인 콘텐츠 영역

© 2026 MyApp

side=right — 속성 패널

에디터 영역
속성
레이아웃

스타일

테스트 커버리지

2026년 2월 4일

생성된 테스트 결과를 찾지 못했습니다.

Sidebar 항목이 문서 메타에 연결되어 있지만 현재 생성 파일에는 없습니다.

테스트를 추가한 뒤 `bun run generate:test-results`를 실행하거나 `testDescribe` 매핑을 다시 확인하세요.

Sidebar Props

Prop타입기본값설명
children*ReactNode—Sidebar.Header, Sidebar.Content, Sidebar.Footer 자식 요소
collapsiblebooleanfalse접기/펼치기 토글 지원
defaultCollapsedbooleanfalse초기 접힘 상태
collapsedboolean—제어 모드: 접힘 상태
onCollapsedChange(collapsed: boolean) => void—제어 모드: 접힘 상태 변경 핸들러
widthnumber280펼침 상태 너비 (px)
collapsedWidthnumber56접힘 상태 너비 (px)
side"left" | "right""left"사이드바 위치
labelstring"사이드바"aside aria-label
classNamestring—커스텀 CSS 클래스

Sidebar.Group Props

Prop타입기본값설명
children*ReactNode—Sidebar.Item 요소들
labelstring—그룹 레이블 (접힌 상태에서 숨겨짐)
classNamestring—커스텀 CSS 클래스

Sidebar.Item Props

Prop타입기본값설명
children*ReactNode—항목 레이블 텍스트
iconReactNode—아이콘 (접힌 상태에서도 표시)
activebooleanfalse활성 상태 (aria-current=page)
onClick() => void—클릭 핸들러
hrefstring—링크 URL — 설정 시 <a> 태그로 렌더링
tooltipstring—접힌 상태에서 Tooltip 표시 (미지정 시 children 텍스트)
badgeReactNode—우측 배지 (숫자/텍스트). 접힌 상태에서 아이콘 위 dot으로 축소
classNamestring—커스텀 CSS 클래스

Import

tsx
import { Sidebar, useSidebar } from "@reopt-ai/opt-ui";

키보드 동작

키동작
Ctrl+[사이드바 접기/펼치기 토글