Skip to content

Releases: aahreum/VarSync

v1.1.3 — Typography fontWeight 변수 참조 및 fontStyle 제거

22 May 11:50

Choose a tag to compare

Bug Fix / Improvement

fontWeight 변수 바인딩 지원 + fontStyle 제거 (#48)

텍스트 스타일에 바인딩된 fontWeight 변수를 {font-weight.700} 형태로 출력합니다.
불필요한 fontStyle 필드("7 Bold" 같은 Figma 내부 문자열)는 출력에서 제거됩니다.

변경 전

"fontFamily": "{font-family.default}",
"fontStyle": "7 Bold",
"fontSize": "{font-size.48}"

변경 후

"fontFamily": "{font-family.default}",
"fontWeight": "{font-weight.700}",
"fontSize": "{font-size.48}"

Full Changelog: v1.1.2...v1.1.3

v1.1.2 — 라이브러리 변수 참조 버그 수정

21 May 13:55

Choose a tag to compare

Bug Fix

라이브러리 변수 바인딩 시 raw value 출력 문제 수정 (#45)

외부 팀 라이브러리에서 가져온 변수를 스타일에 바인딩한 경우, 기존에는 변수 경로 대신 "7 Bold", 48 같은 raw value가 출력되는 문제가 있었습니다.

원인: figma.variables.getLocalVariablesAsync()는 로컬 변수만 반환하므로 라이브러리 변수 ID를 찾지 못해 raw value로 폴백됨.

수정: figma.variables.getVariableByIdAsync(id) fallback 조회 추가. 로컬 변수 조회 실패 시 ID로 직접 변수를 가져와 {path.to.variable} 참조 형태로 출력. 결과는 캐시하여 중복 API 호출 방지.

Full Changelog: v1.1.1...v1.1.2

v1.1.1 — Styles JSON 버그 수정

19 May 15:08

Choose a tag to compare

Bug Fixes

Style 이름 풀패스 표시 (#41)

Typography / Effects 미리보기와 내보낸 JSON 모두에서 스타일의 전체 경로가 표시됩니다.

  • heading/xlheading-xl (기존: xl만 표시)
  • Colors chip, Typography 테이블, Effects 테이블 모두 적용

lineHeight 부동소수점 오류 수정 (#41)

Figma 내부 32-bit float 오차로 인한 139.9999976158142% 출력 문제 해결.

  • toPrecision(6) 적용 → 140%

Variables 참조 스타일 속성 raw value 출력 문제 수정 (#41)

Typography / Colors 스타일이 Figma Variables를 참조할 때 raw value 대신 {path.to.variable} 참조 형태로 출력.

  • fontSize: 48fontSize: "{font.size.48}"
  • paint.boundVariables.color / style.boundVariables 체크 후 ref 우선 출력

변경된 파일

  • code.tstoStylePath() 헬퍼, toPrecision(6), boundVariables 참조 처리
  • ui.html — Colors / Typography / Effects 미리보기 이름 렌더링 수정

Full Changelog: v1.1.0...v1.1.1

v1.1.0 — Figma Styles GitHub 동기화 지원

18 May 06:20

Choose a tag to compare

✨ 새로운 기능

Figma Styles → GitHub PR 동기화

  • Paint Styles (Colors): styles/colors.json으로 내보내기 — DTCG color 토큰
  • Text Styles (Typography): styles/typography.json으로 내보내기 — DTCG typography 토큰
  • Effect Styles (Shadow/Blur): styles/effects.json으로 내보내기 — DTCG shadow/blur 토큰
  • Variables와 Styles를 단일 PR에 함께 포함

Variables / Styles 탭 UI

  • Step 2에 탭 바 추가: Variables 탭 / Styles 탭 전환
  • Styles 탭 리치 미리보기:
    • Colors: 컬러 스와치 그리드
    • Typography: Name / Family / Style / Size 테이블
    • Effects: Name / Type / Value 테이블
  • 카드 헤더 체크박스로 내보낼 항목 개별 선택 가능

🔧 버그 수정

  • getLocalPaintStylesAsync API 전환 (documentAccess: dynamic-page 호환)
  • tsconfig target: es2017로 변경 — Figma QuickJS VM 스택 오버플로 오류 수정

📦 출력 파일 구조

{저장 폴더}/
├── {collection-name}.json     # Variables
└── styles/
    ├── colors.json            # Paint Styles
    ├── typography.json        # Text Styles
    └── effects.json           # Effect Styles

v1.0.1

06 Apr 13:31
1b4361b

Choose a tag to compare

VarSync v1.0.1

개선

  • 컬렉션 미리보기를 대시보드 레이아웃으로 변경 (좌측 그룹 메뉴 + 우측 콘텐츠)
  • 변수 경로 기준 그룹핑 (color, spacing 등) 및 그룹별 내보내기 선택
  • COLOR 그룹은 컬러칩 그리드, 나머지는 테이블 표시
  • alias 변수의 실제 값을 resolve하여 미리보기 표시
  • PR 본문에 컬렉션별 타입 통계 자동 포함
  • GitHub repo URL 자동 저장/복원
  • 대시보드 UI 가독성 향상 (폰트 12px, 패딩 증가)
  • 플러그인 초기 가로 크기 확대 (332px → 392px)
  • RGB 변환 로직 중복 제거 (rgbToCss 헬퍼)
  • 변수 조회 성능 개선 (Map 기반 O(M) 그룹핑)

버그 수정

  • invalid 'in' operand 런타임 에러 수정 (null 값 방어)
  • Figma 32비트 float 부동소수점 오차 보정 (0.1000...0.1)
  • 컬러칩 hex 이중변환 수정
  • 체크박스 연동 (컬렉션 ↔ 하위 그룹 양방향 동기화)
  • 미해결 alias [object Object] 표시 수정
  • 파일 다중 생성 버그 수정, 빈 컬렉션 제외

설치 방법

  1. VarSync-plugin.zip 다운로드 후 압축 해제
  2. Figma 데스크톱 앱 → Plugins → Development → Import plugin from manifest...
  3. 압축 해제한 폴더의 manifest.json 선택

v1.0.0

06 Apr 12:48
a0bcd00

Choose a tag to compare

VarSync v1.0.0

Figma Variables → GitHub PR 자동 동기화 플러그인 첫 릴리즈입니다.

주요 기능

  • Figma Variables를 JSON으로 변환하여 GitHub PR 자동 생성
  • 컬렉션별 대시보드 미리보기 (컬러칩 그리드 / 값 테이블)
  • 변수 그룹 단위 내보내기 선택
  • alias 변수 자동 resolve
  • GitHub repo URL / Access Token 저장
  • PR 본문에 컬렉션별 타입 통계 자동 포함

설치 방법

  1. VarSync-plugin.zip 다운로드 후 압축 해제
  2. Figma 데스크톱 앱 → Plugins → Development → Import plugin from manifest...
  3. 압축 해제한 폴더의 manifest.json 선택