Sobre el proyecto
Sparkle se describe como un monorepo de TypeScript para explorar patrones modernos de desarrollo web, móvil y WASM. El README señala que es experimental y que sus APIs y arquitectura evolucionan agresivamente.
El espacio de trabajo utiliza Turborepo y pnpm, requiriendo Node.js >=22.13.1 y pnpm >=10. Después de clonar, pnpm bootstrap instala las dependencias y pnpm dev inicia el entorno de desarrollo completo.
Los paquetes principales incluyen @sparkle/ui, una librería de componentes de React accesible construida sobre primitivas de Radix UI y Tailwind CSS; @sparkle/theme, tokens de diseño multiplataforma y proveedores de temas para web y nativo; @sparkle/types, definiciones de tipos de TypeScript compartidas; y @sparkle/utils, funciones de utilidad y hooks de React.
Las aplicaciones y espacios de trabajo de soporte incluyen apps/fro-jive, una aplicación móvil de Expo / React Native; apps/moo-dang, un shell web impulsado por WASM con ejecutables compilados en Zig y xterm.js; packages/storybook para documentación de componentes, playground y pruebas visuales; y docs/, un sitio de documentación de Astro Starlight.
El tooling de desarrollo incluye @sparkle/config para configuraciones compartidas de build, lint y Tailwind; @sparkle/test-utils para mocks basados en fábricas; y @sparkle/error-testing para pruebas fluidas de escenarios de error. El stack también incluye Vite, tsdown, Vitest, Playwright para regresión visual, Testing Library, ESLint y Prettier.
Los comandos comunes incluyen pnpm bootstrap, pnpm dev, pnpm build, pnpm test, pnpm check, pnpm fix, pnpm health-check y pnpm clean. Los ejemplos de filtrado de espacio de trabajo muestran pnpm add --filter @sparkle/ui react, pnpm --filter @sparkle/ui build y pnpm -r build. Los comandos de documentación incluyen pnpm --filter @sparkle/docs dev, build y docs:automation.
El repositorio también rastrea decisiones arquitectónicas en un grafo de decisiones nativo de git a través de Deciduous. Solo se commitean .deciduous/config.toml y .deciduous/sync/; el caché de SQLite, narratives.md y documents/ están en el gitignore. El README describe un controlador de fusión personalizado para .deciduous/sync/** y señala que aún puede ser necesaria la resolución manual de conflictos, además de un posible fallo de fusión si la CLI de deciduous no está en el PATH.
El README enlaza a un sitio de documentación, Storybook, instrucciones de copilot y un flujo de trabajo de Changesets. Tiene licencia MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.