6.1 KB · 수정 2026-08-03 14:13
목차

2026-08-03 세션 — design-refs 신설: Bootstrap 자산 적재 + devplan 뷰어 페이지 — 기록: [코디]

논의·대안

[페페] 지시 = "getbootstrap.com 무료 소스를 받아 dev 전체의 웹구성 기본 디자인 레퍼런스를 구축하고, 앞으로 bootstrap 외에도 다양한 디자인 소스를 받아 우리 자산으로 정리한다. 소스를 받고 devplan에서 내가 살펴볼 수 있게 UI 샘플 페이지를 구축해라. 이후 gptbutler 목업 샘플도 이어서 진행할 예정."

착수 전 그릴링 1문 = 자산을 어떤 단위로 관리할까. 이 결정이 폴더·카탈로그·페이지 구조를 다 가르기 때문이다. - ①신규 최상위 C:\dev\design-refs\ 정식 신설(카탈로그 + devplan 카드/페이지 + user_brief 시드) — 추천 - ②devplan 하위 assets/vendor/에만 — 가볍지만 devplan 리포가 비대해지고 devplan 밖 프로젝트가 참조하기 어색 - ③tools/ 하위 — tools는 실행 도구 폴더라 "읽는 자산"과 성격이 다름 → [페페] ①선택. 소스가 계속 늘어난다는 전제에서 "폴더 추가 + 카탈로그 1항목"이면 끝나는 틀이 필요했다.

수급 범위는 오프라인으로 완결되는 것으로 잡았다 — CDN 링크만 적어두면 사무실 PC·오프라인에서 안 열리므로 자산이 아니다. Bootstrap은 GitHub 릴리스에서 dist(컴파일 CSS/JS)·examples(공식 예제)·소스 tag zip에서 scss만, Icons는 릴리스 zip 전량(SVG 2078 + 웹폰트)을 받았다. 라이선스는 둘 다 MIT라 상업적 사용에 제약이 없고, 각 폴더에 업스트림 LICENSE를 그대로 뒀다. 유료 테마·NC 라이선스는 애초에 후보에서 뺐다.

서빙 경로에서 예상 못 한 벽을 만났다. devplan 정적 서버(8799 app.py, BASE=C:\dev\devplan)는 자기 루트 밖을 못 보므로 C:\dev\design-refs를 정션(mklink /J)으로 붙였는데 404가 났다. 같은 깊이의 실디렉터리는 200이고, 새로 띄운 Python 3.12 http.server같은 정션을 200으로 서빙했다 → 정션 자체가 아니라 그 서버 프로세스의 권한 문제다. 이어서 app.py/design-refs/* → 마스터 매핑 라우트(경로 탈출 방어 포함)를 넣고 재시작하려 했더니 프로세스가 상승권한이라 같은 계정인데도 taskkill이 "액세스 거부" — 코디가 재시작할 수 없다는 게 확정됐다(예약작업 devplan-dashboard는 delix·Limited로 등록돼 있지만 실행 중인 프로세스는 그 경로가 아니었다).

→ 결론 = 게시(publish) 복사. 브라우저가 실제로 요청하는 것만(dist·examples·아이콘 폰트/CSS/JSON·catalog.json) devplan\design-refs\로 복사한다. app.py 라우트는 되돌리지 않고 남겼다 — 서버가 언젠가 재시작되면 그쪽이 우선 적용되는데 상대 경로 구조가 같아 페이지는 어느 쪽이든 그대로 뜬다(충돌이 아니라 이중화). SCSS·소스맵·SVG 낱개는 게시하지 않는다(아이콘은 웹폰트 CSS로 전부 렌더된다).

예제 35종(비RTL) 분류와 뷰어 페이지는 워크플로 6에이전트로 돌렸다 — 분류 4(각 9종씩, HTML을 직접 열어 실제 클래스명 확인) + 페이지 설계 1 + 적대검증 1. 분류는 slug·한국어 이름·분류·설명·실제 컴포넌트·페페 작업 기준 용도(devplan 대시보드 / PFS 업무화면 / 계산기 사이트 / 랜딩)까지 채웠다.

페이지의 핵심 요구는 "소스가 늘어도 페이지를 안 고친다"였다 → catalog.json을 fetch해 그리는 구조로 못박았다. 숫자(소스·예제·아이콘 수)를 화면에 하드코딩하지 않는 것도 같은 규칙이다(devplan의 "건수 드리프트" 교훈).

결정

산출물·커밋

다음

관계