홈 / Skills / 웹·UI 디자인 / Penpot UI/UX 디자인 (Penpot MCP 사용)
웹·UI 디자인

Penpot UI/UX 디자인 (Penpot MCP 사용)

awesome-copilot communityMITSkill 언어: 영어
라이선스 확인됨스크립트 없음외부 서비스 필요중간 위험
데모실행 기록 · claude-sonnet-5-5 · 2026년 10월
In the Penpot file that is currently open, design a mobile login screen (390x844) for a coffee-ordering app called "Brew & Co": a logo/title, email and password fields, a primary "Sign in" button, a "Forgot password?" link, and a "Create account" secondary action. Follow good UI/UX practice from the skill (spacing, contrast, touch targets, hierarchy). When done, export the board as an image and look at it, then tell me what you created and any problems you noticed.
Skill: penpot-uiux-design

I designed the login screen as a 390×844 board named "Login – Brew & Co". It sits at x=1200 on Page 1, to the right of the board that was already there, which I left alone. I exported it and checked the image. All elements sit inside the board.

What's on it

  • Logo and title: a 72px espresso-brown circle with a "B&" mark. Below it are "Brew & Co" at 36px bold and the subtitle "Sign in to order your coffee" at 16px.
  • Form: "Email" and "Password" labels sit above white 52px fields with 12px corners and a 1px border. The placeholders are "[email protected]" and "Enter your password". The password field has a "Show" toggle.
  • Forgot password?: an underlined, right-aligned link inside a 44px-tall touch area.
  • Sign in: a filled 56px button in dark brown with white 18px bold text. It's the strongest element on the screen.
  • Create account: an outlined 56px secondary button, set off by an "or" divider.

Design choices

  • Colour: the palette is a cream background (#FAF6F1), espresso brown (#3E2723) and a caramel link colour (#8A4B1F). I estimated the contrast rather than measuring it. I expect the text to clear 4.5:1 and the field borders to clear 3:1.
  • Spacing: the layout uses a 24px side margin and mostly 8px-grid spacing.
  • Touch targets: the buttons are 56px tall and the fields 52px, which is above the 44px minimum.

Problems I noticed

  • Layer order: my first render hid the text behind the rectangles. insertChild at the end of the children list put new shapes at the bottom of the stack. I fixed it by sending the rectangles to the back, and the second export is correct. An earlier attempt had also failed on a bad property name (textAlign instead of align), so I deleted that partial board before rebuilding.
  • Not interactive or reusable: this is a static layout with no flex layout, components or prototype links. The "Show" toggle and the "Forgot password?" touch area are not wired to anything.
  • Missing states: there are no focus, error, filled or loading states. The password field also shows a placeholder, not masked dots.
  • Placeholder contrast: the placeholder text (#6F5F57) is only just above the 4.5:1 threshold.
  • Logo: the mark is a simple "B&" in a circle, not a real brand asset.
  • Layout: there are no status-bar or safe-area elements, and the bottom ~120px of the screen is empty. A "Continue as guest" or terms line could fill it, or the content could shift down a little.
  • Fonts: I used Penpot's default font and didn't pick a typeface.

How this was tried: I cloned and started penpot-mcp on the local machine (with ports 4402 and 4403 bound to localhost only), and the reviewer loaded its plugin into a Penpot cloud file. During the run only this skill and Penpot's MCP tools were allowed. The model created a new board in an empty file. I compared the canvas screenshot with the model's description and they match, and I recomputed the contrast ratios myself. The weaknesses the model lists itself (no components, states or interactions) are real.

하는 일

penpot-mcp 서버로 Penpot에서 UI/UX 디자인을 만들도록 모델을 안내합니다. 기존 디자인 시스템이 있는지 먼저 확인하고, 파일 구조를 살피고, 보드·도형·텍스트를 만들고, 플렉스 레이아웃을 적용하고, 새 화면을 겹치지 않게 배치하고, 도형을 내보내 결과를 검증합니다. 기본 간격·타이포그래피·색상 토큰(디자인 시스템이 없을 때만 사용), 자주 쓰는 모바일·데스크톱 레이아웃, 컴포넌트 체크리스트, 접근성 빠른 점검(명도 대비 4.5:1, 터치 영역 44px), Penpot API 주의점이 들어 있습니다. 참고 문서 4개는 컴포넌트, 접근성, 플랫폼 지침, MCP 설치를 다룹니다.

동작 방식

  1. 모델이 먼저 Penpot MCP 도구를 호출해 보고, 연결되지 않았으면 설치를 설명하기 전에 사용자에게 묻습니다.
  2. Penpot 플러그인 API로 파일을 읽고 보드와 요소를 만들거나 수정합니다.
  3. 도형을 내보내 디자인을 확인하며, 선택 영역에서 CSS를 추출할 수도 있습니다.

이런 때 좋습니다

Penpot에서 화면과 디자인 시스템을 설계하거나, 접근성 규칙에 맞춰 디자인을 검토할 때.

참고 및 위험

중간 위험:Penpot MCP 서버를 통해 열려 있는 Penpot 파일 안에서 JavaScript를 실행하므로 해당 파일의 도형을 만들거나 바꾸거나 지울 수 있습니다. 먼저 파일을 복제하거나 사본에서 작업하세요. 설치에는 서드파티 코드 도입(GitHub에서 `penpot-mcp` 복제, `npm install`, `npm run bootstrap`, Node 22 이상, 로컬 포트 4400~4402)과 localhost에서 플러그인을 불러오는 과정이 필요하니 실행 전에 해당 저장소를 검토하세요. 시험 실행함: penpot-mcp를 로컬에 설치해 Penpot 클라우드 파일에 연결했고, 모델이 이 Skill로 로그인 화면을 만들었습니다. 캔버스에서 설명과 일치함을 확인했고 대비 수치도 다시 계산했습니다. 주의: 코드를 읽어 보니 기본값으로 4402·4403 포트가 로컬 네트워크 전체에 열려 다른 사람이 접속해 코드를 실행할 수 있습니다. 시험에서는 내 기기로만 제한했으니 설치할 때도 똑같이 제한하세요. 이미지 내보내기·가져오기 도구는 지정된 임의의 절대 경로를 읽고 씁니다. 모델이 밝힌 문제: 컴포넌트·상태·상호작용이 없고, 처음에는 레이어 순서가 틀렸습니다.