corpi 88bb4f40b8 feat(space/hud): Exit 버튼 좌측 하단 Invisible Door UI로 재배치
맥락:
- 기존의 우측 상단 Exit(나가기) 버튼이 너무 동떨어져 있었음.
- 목표(Goal) 패널 하단에 Exit 버튼을 두려는 시도가 있었으나, '목표 유지'와 '목표 포기(Exit)'라는 상반된 의미가 한 공간에 묶여 인지적 충돌을 발생시킴.
- 몰입을 방해하지 않는 투명함(Invisible UI)과 본능적인 이탈 경로가 필요함.

변경사항:
- SpaceToolsDockWidget에 새로운 좌측 하단(Bottom-Left) 모서리 Exit 버튼 렌더링 영역 추가.
- 평소에는 투명한 Escape(⎋) 아이콘만 노출하여 배경 공간의 방해 최소화.
- 사용자가 마우스를 Hover할 때만 알약(Pill) 형태로 부드럽게 확장(Expansion)되며 ExitHoldButton(Bar)이 나타나는 고급 인터랙션 구현.
- FloatingGoalWidget에 테스트로 추가했던 Exit 버튼 코드 원복(제거) 및 SpaceFocusHudWidget, SpaceWorkspaceWidget의 불필요한 prop 전달 정리.

검증:
- npm run build 정상 통과.

세션-상태: 몰입 공간(/space)의 하이엔드 UI 레이아웃 재배치 및 디자인 고도화 완료.
세션-다음: 향후 필요 시 통계(Analytics) 또는 결제(Paywall) 세부 기능 구현.
세션-리스크: 없음.
2026-03-13 15:26:53 +09:00
2026-02-26 12:29:45 +09:00
2026-02-25 15:34:50 +09:00

VibeRoom Web

Next.js(App Router) + TypeScript + TailwindCSS 기반 VibeRoom 프론트엔드입니다.

실행 방법

npm install
npm run dev

브라우저에서 http://localhost:3000 접속

주요 라우트

  • / : Landing 페이지 (src/app/(landing)/page.tsx)
  • /app : 가상공간 입장 허브
  • /space : 집중공간 스켈레톤
  • /stats : 집중 통계 목업
  • /settings : 설정 목업
  • /login : 로그인

구조

FSD 스타일로 src/ 하위 레이어를 사용합니다.

  • src/entities : room/user/session 타입 + 더미 데이터
  • src/features : room-select/check-in/reactions/custom-entry-modal/profile-menu/distraction-dump
  • src/widgets : 페이지 섹션 단위 UI (TopBar, StartRitual, RoomsGallery, SpaceShell 등)
  • src/shared : 공용 UI, 유틸, 설정
  • src/app : App Router 페이지 조합

구현 범위

이번 변경은 UI 목업 중심입니다.

  • 타이머 카운트다운/오디오 재생/실시간/DB 저장/API 호출 미구현
  • 선택 하이라이트, 패널 토글, 모달 탭, 드롭다운, 라우팅, 토스트만 구현

문서(작업 재개용)

세션이 끊겨도 같은 품질로 이어서 작업하려면 아래 문서를 먼저 확인합니다.

  • docs/README.md
  • docs/00_project_brief.md
  • docs/01_ui_guidelines.md
  • docs/02_arch_fsd_rules.md
  • docs/03_routes_map.md
  • docs/90_current_state.md
Description
No description provided
Readme 1.1 MiB
Languages
TypeScript 92.8%
CSS 6.7%
Shell 0.3%
JavaScript 0.2%