프로젝트 소개

Sparkle은 현대적인 웹, 모바일 및 WASM 개발 패턴을 탐구하기 위한 TypeScript 플레이그라운드 모노레포로 설명됩니다. README에 따르면 이는 실험적인 프로젝트이며 API와 아키텍처가 공격적으로 진화하고 있습니다. 이 워크스페이스는 Turborepo와 pnpm을 사용하며, Node.js >=22.13.1 및 pnpm >=10 버전이 필요합니다. 클론 후 pnpm bootstrap으로 의존성을 설치하고 pnpm dev를 통해 전체 개발 환경을 시작할 수 있습니다. 핵심 패키지로는 Radix UI 프리미티브와 Tailwind CSS를 기반으로 구축된 접근성 높은 React 컴포넌트 라이브러리인 @sparkle/ui, 웹과 네이티브를 위한 크로스 플랫폼 디자인 토큰 및 테마 제공자인 @sparkle/theme, 공유 TypeScript 타입 정의인 @sparkle/types, 그리고 유틸리티 함수와 React 훅을 제공하는 @sparkle/utils가 있습니다. 애플리케이션 및 지원 워크스페이스로는 Expo / React Native 모바일 앱인 apps/fro-jive, Zig로 컴파일된 실행 파일과 xterm.js를 사용하는 WASM 기반 웹 쉘인 apps/moo-dang, 컴포넌트 문서 및 시각적 테스트를 위한 packages/storybook, 그리고 Astro Starlight 문서 사이트인 docs/가 포함됩니다. 개발 도구로는 공유 빌드, 린트 및 Tailwind 설정을 위한 @sparkle/config, 팩토리 기반 모킹을 위한 @sparkle/test-utils, 유연한 에러 시나리오 테스트를 위한 @sparkle/error-testing가 있습니다. 기술 스택에는 Vite, tsdown, Vitest, 시각적 회귀 테스트를 위한 Playwright, Testing Library, ESLint 및 Prettier가 포함됩니다. 주요 명령어로 pnpm bootstrap, pnpm dev, pnpm build, pnpm test, pnpm check, pnpm fix, pnpm health-check, pnpm clean 등이 있습니다. 워크스페이스 필터링 예시로는 pnpm add --filter @sparkle/ui react, pnpm --filter @sparkle/ui build, pnpm -r build가 있으며, 문서 관련 명령어로 pnpm --filter @sparkle/docs dev, build, docs:automation가 있습니다. 또한 이 저장소는 Deciduous를 통해 git-native 결정 그래프로 아키텍처 결정을 추적합니다. .deciduous/config.toml과 .deciduous/sync/만 커밋되며, SQLite 캐시, narratives.md 및 documents/는 gitignore 처리됩니다. README는 .deciduous/sync/**를 위한 커스텀 머지 드라이버를 설명하며, 수동 충돌 해결이 필요할 수 있고 deciduous CLI가 PATH에 없으면 머지가 실패할 수 있음을 명시합니다. README에는 문서 사이트, Storybook, copilot 지침 및 Changesets 워크플로우 링크가 포함되어 있으며, MIT 라이선스를 따릅니다.