[Chore/#3] 초기 설정 정비 (pnpm·Biome·Tailwind·폴더 구조) - #4
Merged
Conversation
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013WuSVrxYqSoDxasZSt5TT1
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013WuSVrxYqSoDxasZSt5TT1
tnals0924
self-requested a review
September 7, 2026 09:43
[Chore/#5] WDS(@wanteddev/wds) 디자인 시스템 초기 설정
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#️⃣연관된 이슈
🎯 해결하려는 문제가 무엇인가요?
stream-client가 Vite 템플릿 기본값 그대로라 lint/format, 경로 별칭, 폴더 구조, 패키지 매니저, 스타일링 방식이 하나도 정해져 있지 않았다.
❓ 왜 해결해야 하나요?
앞으로 기능 코드가 쌓이기 전에 초기 설정을 잡아둬야 이후 갈아엎는 비용이 없다. mash-up-kr/Promise.9-Web에 이미 검증된 설정이 있어 그중 우리 서비스(순수 웹 SPA)에 맞는 부분만 골라 반영했다.
⭐ 어떻게 해결했나요?
참고: mash-up-kr/Promise.9-Web
chore: npm에서 pnpm으로 전환— corepack으로 pnpm 고정,package-lock.json→pnpm-lock.yamlchore: Node 버전 고정 (.nvmrc)chore: ESLint 제거, Biome 도입— lint+format+import 정리 단일화 (참고: biome.jsonc)chore: 경로 별칭(@/*) 추가— tsconfigpaths+ viteresolve.aliasrefactor: 기능 기반 폴더 구조로 src/ 정비—App.tsx를app/으로 이동, Vite 템플릿 데모 콘텐츠·미사용 자산 정리.components/ui/·hooks/·lib/·utils/는 git이 빈 디렉터리를 못 담고 "빈 폴더 미리 만들지 않기" 원칙과도 맞지 않아 실제로 필요해질 때 만들기로 계획 수정chore: Tailwind CSS v4 도입—@tailwindcss/vite플러그인 방식(postcss 불필요), 디자인 토큰 넣을 빈@theme블록, Biome에 Tailwind 클래스 정렬 규칙 추가docs: coding-style 컨벤션 문서 추가— Promise.9-Web shared.md에서 RN/멀티서페이스 부분 제외하고 이식chore: PR 담당자 자동 지정 GitHub Action 추가— 참고: review-assign.yml,reviewers는 비워두고assignees만 적용chore: docs/plans를 git 추적에서 제외—.gitignore의.docs/plans오타(docs/plans가 맞음)를 고치고, 이미 커밋됐던 계획 문서를 추적에서 제외 (로컬 전용으로 유지)🧩 이 PR의 한계 & 트레이드오프
디자인 시스템은 자리(Tailwind 토큰 위치,
components/ui/규칙)만 마련했고 실제 컴포넌트·토큰 값은 넣지 않았다.review-assign.yml의 리뷰어 목록도 비워뒀다.⛓️ 기존 기능에 미치는 영향
App.tsx의 Vite 기본 데모 콘텐츠(로고·카운터)를 걷어내고STREAM플레이스홀더로 교체했다. 실제 제품 코드가 아직 없어 영향 없음.🔀 Edge Case & 실패 시나리오
해당 없음 (tooling 초기 설정).
📋 검토한 대안과 선택 이유
@tailwindcss/vite) 사용 — RN 대응이 필요 없는 순수 웹이라 공식 권장 방식을 그대로 따름.entities/·features/는 실제 도메인이 생기기 전까지 만들지 않기로 함 (5번 커밋 참고).💬 리뷰 포인트
biome.jsonc룰셋(포맷 스타일 double quote/세미콜론/trailing comma, a11y 룰 일부 off)이 팀 취향과 맞는지