Herramienta Gratis Activo

Farm

Para acelerar el arranque en desarrollo y los builds de producción de proyectos web usando un bundler en Rust compatible con Vite.

Herramienta de build web ultrarrápida escrita en Rust y compatible con plugins de Vite.

Notas y contexto

Qué es

Farm es una herramienta de build web (bundler) de alto rendimiento escrita en Rust, mantenida por el equipo farm-fe. Está construida sobre SWC para el parseo y la transformación de código, y usa NAPI-RS para sus enlaces con Node. Su objetivo es ofrecer arranques en milisegundos y HMR casi instantáneo manteniendo compatibilidad con el ecosistema de plugins de Vite.

Para qué sirve

  • Compilar aplicaciones web de React, Vue o Solid mediante sus plugins oficiales.
  • Reducir el tiempo de arranque en desarrollo y los builds de producción en proyectos grandes.
  • Reutilizar plugins de Vite ya existentes sin reescribirlos.
  • Procesar HTML, CSS, CSS Modules, JS/JSX/TS/TSX, JSON y assets estáticos sin configuración adicional.

Cuándo usarlo

  • Cuando el tiempo de build o de arranque en desarrollo se ha convertido en un cuello de botella y buscas una alternativa más rápida a Vite o Webpack.
  • Cuando quieres aprovechar el rendimiento de un bundler en Rust pero sin perder la compatibilidad con plugins del ecosistema Vite.
  • Si tu equipo prioriza la velocidad y la paridad entre desarrollo y producción frente a la madurez de herramientas más asentadas.

Ejemplo

Crear un proyecto nuevo con la plantilla oficial:

npm create farm@latest
# elegir framework (React, Vue, Solid...)

cd mi-proyecto
npm install
npm run dev      # arranque en milisegundos con HMR
npm run build    # build de producción

Configuración básica en farm.config.ts:

import { defineConfig } from '@farmfe/core';

export default defineConfig({
  compilation: {
    input: { index: './index.html' },
    output: { path: 'dist' },
  },
});

Puntos clave

  • Núcleo escrito en Rust y apoyado en SWC para máxima velocidad de compilación.
  • Compatibilidad con plugins de Vite, además de plugins propios en Rust y JavaScript.
  • Caché persistente en disco y compilación incremental a nivel de módulo activadas por defecto.
  • Estrategia de “partial bundling” que equilibra rendimiento y granularidad de caché.
  • Paridad entre desarrollo y producción, con soporte de navegadores modernos y legacy (ES5).

Ten en cuenta

  • El proyecto es open source con licencia MIT y se encuentra activo (alcanzó la versión estable 1.0). La versión publicada de referencia es una nightly, así que conviene fijar versiones en producción.
  • Aunque es compatible con muchos plugins de Vite, no todos funcionan al 100%; verifica los que uses antes de migrar un proyecto completo.
  • Su ecosistema y comunidad son menores que los de Vite o Webpack, lo que puede implicar menos recursos y soluciones ante problemas concretos.
Volver al directorio
Volver al directorio