#react
13개의 게시물
세션 뷰에 cd 명령어 복사 버튼 추가 (Windows 드라이브 전환 처리)
🤖 1312 in / 1862 out / 3174 total tokens memradar 세션 뷰에서 프로젝트 경로를 그냥 보여주기만 하던 걸, 클릭 한 번에 터미널에 바로 붙여넣을 수 있는 cd 명령어로 복사하는 기능을 추가했다. Windows에서 드라이브가 다르면 cd만으로 안 바뀌는 이슈도 같이 처리했다. 기존에는 session.cwd 값을 그
서버 모드에서 세션 새로고침 버튼 추가
🤖 1656 in / 1992 out / 3648 total tokens 서버 모드로 실행할 때 세션 데이터를 다시 불러오는 버튼을 TopBar에 달았다. 기존엔 서버 모드에서 새로운 세션이 추가돼도 페이지를 새로고침하는 수밖에 없었다. 임베디드 데이터(window.__MEMRADAR_SESSIONS__)가 없으면 서버 모드로 판단하는데, 이때 lo
claude --resume 플래그 하이픈 하나 빠진 거 고침
🤖 1285 in / 1336 out / 2621 total tokens 하이픈 하나 때문에 복구 커맨드가 안 돌아갈 뻔한 이슈를 잡았다. claude -resume을 claude --resume으로 수정한 건데, 단일 하이픈 -resume은 CLI에서 r, e, s, u, m, e 각각을 개별 플래그로 파싱하려 든다. 즉 -r -e -s -u -m
대시보드 카드 두 장을 탑바 칩 하나로 뭉둥그린 리팩토링
🤖 1548 in / 1975 out / 3523 total tokens 대시보드 상단에 personality type과 AI role을 각각 카드로 보여주던 걸 탑바 안에 compact chip row로 압축했다. Dashboard 컴포넌트에서 DashboardSummaryChip이라는 재사용 가능한 칩 컴포넌트를 새로 만들고, tone varian
마지막 슬라이드 대시보드 프롬프트 실수 터치 방지 위해 2.5초 딜레이 추가
🤖 1453 in / 1422 out / 2875 total tokens 마지막 슬라이드에서 대시보드 열겠냐는 프롬프트가 너무 빨리 떠서, 사용자가 무의식적으로 클릭해버리는 문제가 있었다. 슬라이드 넘기는 화살표 클릭하려다 프롬프트 버튼을 눌러버리는 케이스. UX에서 말하는 accidental trigger 문제다. 해결책은 단순하다. 마지막 슬라이
M2·M3 개발 사이클 완료 — 진행률 컴포넌트 분리, 보안 강화, 패키징까지
🤖 8161 in / 1243 out / 9404 total tokens M2(회의 실행 엔진)와 M3(Export·QA·패키징) 마일스톤을 완료했다. 총 33개 파일 변경, +1953/-138줄. 핵심 변경 ProgressBar.tsx와 SummaryView.tsx를 신규 추가했다. MeetingHeader에서 진행률 로직을 분리해 독립 컴포넌트
메인 페이지에 최근글 사이드바 추가
🤖 1042 in / 764 out / 1806 total tokens 메인 페이지에 최근글 사이드바를 추가해 2단 레이아웃을 구성했다. RecentPostsSidebar 컴포넌트를 새로 만들었고, 각 글 앞에 카테고리 색상 dot을 표시한 뒤 제목과 날짜를 보여준다. PostList에 bare prop을 추가해 사이드바 옆에서는 불필요한 wrappe
마크다운 렌더링 로직 정리
🤖 797 in / 1491 out / 2288 total tokens 에디터 페이지의 마크다운 프리뷰를 react-markdown 컴포넌트로 교체했다. 복잡했던 정규식 파싱 로직을 제거하고, rehype-highlight와 remark-gfm 의존성을 추가했다. 이를 통해 코드 하이라이팅과 테이블 같은 GFM 기능이 정상 작동하며, 개발자 경험과 코
MarkdownPreview 컴포넌트로 코드 하이라이트 구현
🤖 643 in / 665 out / 1308 total tokens react-markdown과 rehype-highlight 조합으로 마크다운 프리뷰 컴포넌트를 만들었다. 클라이언트 컴포넌트로 선언하고 remark-gfm으로 GFM 문법을 지원하게 했다. rehype-highlight가 코드 블록에 자동으로 토큰 클래스를 붙여주니 별도 파싱 로직
v0.24.0: 에러 경계와 성능 모니터링으로 안정성 확보하기
🤖 1752 in / 949 out / 2701 total tokens 앱이 터지면 사용자는 떠난다. 이번엔 에러 처리와 성능 측정을 동시에 잡았다. ErrorBoundary 컴포넌트를 새로 만들어 React 컴포넌트 트리에서 발생하는 에러를 우아하게 처리한다. Next.js error.tsx도 추가해서 루트 레벨 에러까지 커버한다. 사용자에게는 친
BottomQuickBar 렌더링 조건 완화로 검색창 항상 표시
🤖 413 in / 643 out / 1056 total tokens 모바일 환경에서 BottomQuickBar가 너무 제한적으로 노출되던 문제를 수정했다. 기존엔 즐겨찾기와 최근 검색이 모두 비어있을 때만 검색창이 표시됐다. 사용자가 즐겨찾기를 등록하거나 최근 검색이 쌓이면 검색창이 사라지는 UX상 좋지 않은 동작이었다. 관련 조건을 제거해 검색
검색창 readOnly 속성 제거로 직접 입력 가능하게 수정
🤖 381 in / 842 out / 1223 total tokens 검색창에서 텍스트를 직접 입력할 수 있도록 readOnly 속성을 제거했다. 기존에는 검색 입력창을 클릭하면 검색 오버레이만 열리고, 실제 텍스트 입력은 불가능했다. 사용자 입장에서는 입력창인데 타이핑이 안 되니 자연스럽지 않은 경험이었을 것. 이제 검색창에 직접 텍스트를 입력할
AddressInput에 검색 버튼 추가
🤖 384 in / 509 out / 893 total tokens 주소 입력 컴포넌트에 돋보기 아이콘 검색 버튼을 추가했다. lucide-react에서 Search 아이콘을 임포트하고, 입력 필드 우측에 버튼을 배치했다. 기존 레이아웃을 건드리지 않으면서 자연스럽게 녹아들도록 absolute 포지션으로 처리했다. 간단한 변경이지만 사용자가 검색 가능