꽹과리 · 오픈소스
작게 만들고,크게 울립니다.
React와 React Native를 위한 상태·모션 오픈소스. 첫 import부터 바로 동작하고, 필요한 만큼만 커지는 세 가지 도구를 만듭니다.
- 패키지 3개
- React · React Native
- TypeScript 선언 포함
- ISC 라이선스
징을 눌러 보세요. 울림을 받은 도구가 각자의 방식으로 응답합니다.
restate()useDraft.set()shallowpersistedRestate()useRestateScope()useAnimatedValuetiming()spring()interpolate()Animated.KeepAnimated.SceneMotionNumberMotionHighlightMotionListMotionSwapMotionSheetProgressRingrestate()useDraft.set()shallowpersistedRestate()useRestateScope()useAnimatedValuetiming()spring()interpolate()Animated.KeepAnimated.SceneMotionNumberMotionHighlightMotionListMotionSwapMotionSheetProgressRing
01
훅 하나로 공유하고,저장은 내가 정할 때.
Provider·액션·리듀서 없이 여러 컴포넌트가 같은 값을 읽습니다. 선택한 값이 바뀔 때만 다시 그리고, 저장과 복원은 정확히 원하는 순간에 일어납니다.
- Provider 없이 바로 공유
- 고른 부분만 구독
- IndexedDB·MMKV에 명시적으로 저장
설치npm install @kkwaenggwari/restate
실시간
두 컴포넌트, 하나의 스토어
어느 쪽 버튼을 눌러도 같은 restate() 값을 읽는 두 패널이 함께 바뀝니다. 배송 배지는 선택한 조건만 구독합니다.
02
값 하나로,화면 전체를 지휘합니다.
React Native Animated의 timing·spring·interpolate를 React DOM에서 그대로 씁니다. 값 하나가 여러 요소의 style을 움직이고, 프레임마다 React를 다시 그리지 않습니다.
- 익숙한 React Native Animated API
- 중간에 끊어도 위치와 속도를 이어받음
- 주인이 사라지면 스스로 정리
설치npm install @kkwaenggwari/animated
실시간
Value 하나, 도형 열두 개
슬라이더는 Value 하나만 바꿉니다. 열두 도형의 위치·회전·크기·모서리가 모두 그 값에서 파생됩니다. 스프링을 보낸 뒤 도중에 슬라이더를 잡아 보세요.

완성 컴포넌트·React · React Native
03
어려운 인터랙션은이미 끝내 두었습니다.
굴러가는 숫자, 따라 움직이는 하이라이트, 바뀐 항목만 움직이는 목록, 시트와 스와이프 동작까지. Provider나 설정 호출 없이 데이터만 넘기면 React와 React Native에서 동작합니다.
- 숫자·탭·목록·시트까지
- 웹과 네이티브에 같은 import
- 새 입력은 화면에 보이는 그대로 이어감
설치npm install @kkwaenggwari/animated-chorus @kkwaenggwari/animated
실시간
데이터만 바꾸면 되는 대시보드
기간을 고르면 MotionHighlight가 이동하고, MotionNumber가 굴러가고, ProgressRing이 차오르고, MotionList는 바뀐 행만 움직입니다.
02 · 합주
한 번 치면,모두가 움직입니다.
이 무대는 Animated로 만들었습니다. 스크롤 진행을 담은 Value 하나가 도형 48개의 위치·회전·크기·투명도를 한꺼번에 지휘합니다.
- 01
- 02
갈래울림이 세 갈래로 나뉘어 각 도구의 색을 입습니다.
- 03
모양상태의 연결, 모션의 궤적, 합창의 기둥이 됩니다.
- 04
박자모두가 한 줄로 서서 같은 박자에 정착합니다.
progress
import 한 줄로 시작
감싸는 Provider나 전역 설정을 먼저 요구하지 않습니다. 앱이 필요로 할 때 기능을 더합니다.
필요한 곳만 다시
선택한 값이 바뀐 컴포넌트, 값을 쓰는 요소, 움직인 행만 갱신합니다.
끝까지 책임
중간에 끊긴 모션은 화면에 보이는 그대로 이어지고, 주인이 사라지면 구독과 애니메이션을 정리합니다.
타입과 문서 포함
모든 패키지에 TypeScript 선언이 들어 있고, 문서는 39개 언어로 읽을 수 있습니다.