Sobre el proyecto

Oxc para Ruby es una gema que empaqueta el compilador Oxc basado en Rust, ofreciendo a los desarrolladores de Ruby un conjunto de herramientas de alto rendimiento para JavaScript y TypeScript. Permite analizar, transformar y minificar JavaScript directamente desde Ruby, eliminando la necesidad de un runtime de JavaScript. Las características clave incluyen: - **Minificación**: Comprimir y ofuscar JavaScript con opciones configurables. - **Transformación**: Compilar TypeScript y JSX, reducir la sintaxis a versiones objetivo de ECMAScript y, opcionalmente, minificar en la misma pasada. - **Archivos de declaración**: Generar archivos `.d.ts` a partir de fuentes de TypeScript. - **Análisis**: Obtener un AST compatible con ESTree como hashes de Ruby simples, con recuperación de errores y diagnósticos. - **Recorrido y reescritura de AST**: Recorrer y mutar el AST con un patrón de visitante, preservando el formato original. - **Análisis de símbolos y módulos**: Extraer símbolos declarados y no resueltos, importaciones y exportaciones. - **Mapas de origen**: Generar mapas de origen como texto JSON. - **Ayudantes de runtime**: Gestionar funciones auxiliares para la reducción, con opciones para ayudantes externos o suposiciones para evitarlos. La versión de la gema sigue la versión de Oxc empaquetada, y hay gemas precompiladas disponibles para muchas plataformas; de lo contrario, se compila desde el código fuente que requiere Rust 1.96+. La API está diseñada para ser intuitiva, con opciones validadas estrictamente y resultados que proporcionan diagnósticos detallados.