OrbitUI
Biblioteca de componentes que nace de la filosofía de shadcn/ui, pero diseñada exclusivamente para el ecosistema de Astro. Mi objetivo principal fue crear una solución que permitiera a los desarrolladores construir interfaces de usuario atractivas y de alto rendimiento sin la complejidad y el peso de dependencias innecesarias.
Si bien existen librerías de componentes excelentes, muchas dependen de frameworks de JavaScript que quizás no son necesarios para sitios estáticos o proyectos con baja interactividad. OrbitUI surge para llenar ese vacío, ofreciendo una alternativa que se enfoca en componentes “listos para copiar y pegar”, fáciles de personalizar con Tailwind CSS, y con un diseño minimalista pero funcional.
Características Principales
- Soporte Completo de TypeScript: Disfruta de una experiencia de desarrollo más robusta y sin errores gracias al tipado completo.
- Fácilmente Personalizable: Modifica cada componente a tu gusto usando las clases de Tailwind CSS, adaptándose perfectamente a la identidad visual de tu proyecto.
- Componentes Optimizados: Cada componente está diseñado para ser ligero y eficiente, contribuyendo a un rendimiento de carga superior en tus proyectos Astro.
- Sin Dependencias Innecesarias: Evita la “fatiga de dependencias”. OrbitUI no añade capas de complejidad o scripts adicionales cuando no son necesarios.
- Sistema de Temas Flexible: Adapta el aspecto de tus componentes de forma sencilla para que coincidan con la estética de tu diseño.
- CLI Intuitiva: Agrega y gestiona componentes fácilmente a través de una interfaz de línea de comandos amigable.
Tecnologías
CLI (Command Line Interface)
- Commander.js: Framework para crear interfaces de línea de comandos.
- Inquirer: Para prompts interactivos en la terminal.
- Chalk: Para colorear la salida en terminal.
- Ora: Para spinners de carga.
- Execa: Para ejecutar comandos del sistema.
- fs-extra: Utilidades extendidas para el sistema de archivos.
- PostCSS y TailwindCSS: Para procesamiento de CSS.
- TypeScript y usa tsup como bundler.
Documentación
- Astro: Framework principal para el sitio de documentación.
- Starlight: Tema de documentación para Astro astro.
- TailwindCSS: Para estilos.
- MDX: Para contenido de documentación con componentes.
Componentes
- Astro: Para crear componentes nativos.
- TailwindCSS: estilos principal de los componentes.
- class-variance-authority: Para variantes de componentes
- clsx: Utilidad para concatenar clases CSS.
- tailwind-merge: Para fusionar clases de Tailwind de manera inteligente.
- TypeScript: Tipado estático.
Herramientas de Desarrollo
- pnpm: Gestor de paquetes.
- Turbo: Orquestador de builds para el monorepo.
- ESLint y Prettier: Para linting y formateo de código.
- Husky - Para git hooks.