
Compilar SCSS y LESS a CSS en línea, sin instalar un build tool
Compila un fragmento SCSS o LESS (variables, mixins) a CSS en el navegador, sin npm run build — útil para una PR, un snippet o un entorno sin Node.
¿Por qué compilar SCSS o LESS fuera del proyecto?
Un comentario de pull request con doce líneas de SCSS, un snippet de Stack Overflow con un mixin paramétrico o un onboarding en un portátil sin Node: nada de eso justifica lanzar npm run build. FastMinify no sustituye Dart Sass en CI, sass-loader ni el pipeline CSS de Vite. El compilador SCSS a CSS ejecuta Dart Sass en la pestaña; el compilador LESS a CSS ejecuta less.js del mismo modo. Pega un fragmento o suelta una carpeta local de parciales y lee CSS estándar — no se sube nada. El clúster vive en el hub de preprocesadores CSS. Tras compilar, encadena el minificador CSS en línea cuando de verdad necesites CSS más pequeño, no solo salida expanded.
Cuándo compilar en el navegador y cuándo no
El compilador es un bisturí, no la fábrica de producción.
Si la respuesta depende de paquetes, alias o del grafo completo de la aplicación, quédate en CI.
Los errores de compilación que te comen una tarde entera
Un token de design system, un mixin puntual o un comentario de revisión no necesitan Vite, webpack ni una imagen Docker de Node. El coste es esperar el install, la caché y todo el grafo CSS cuando solo querías ver en qué se convierte $spacing * 2.
La sintaxis de módulos de Dart Sass funciona. Lo que no funciona en el navegador es resolver paquetes. FastMinify nunca lee el disco fuera de la carpeta que sueltas y no busca node_modules, GitHub ni un CDN.
SCSS/LESS → CSS es una transformación de lenguaje. CSS → CSS más pequeño es un paso de minificación (espacios, comentarios, a veces reescritura). La salida compressed de Sass no es CSSO. No te saltes la guía de minificación CSS si el objetivo es el tamaño.
Las variables SCSS empiezan por $ y los mixins usan @mixin / @include. Las variables LESS empiezan por @ y los mixins parecen definiciones de clase. Dart Sass no analiza LESS; less.js no analiza SCSS.
SCSS vs LESS vs un build de verdad — lo que FastMinify ejecuta realmente
La herramienta SCSS compila con Dart Sass (compileString, sintaxis scss). La herramienta LESS compila con less.js. Las opciones difieren porque los motores difieren — no hay un interruptor único de «preprocesador».
El modo pegar es un solo búfer. El modo bundle es un archivo de entrada más los archivos locales que Dart Sass o Less alcanzan de verdad. No es una concatenación. Versión 1: una entrada, sin source maps, sin resolución de paquetes, 32 MiB por archivo y 32 MiB en total. El pegado en sí está limitado a 512 KiB (el mismo techo que otras entradas de tamaño DevOps del sitio).
Usa el navegador cuando la pregunta es «¿qué CSS emite este fragmento?». Usa la cadena del proyecto cuando la pregunta es «¿qué CSS entrega esta app?». Los paquetes npm, los imports glob y los alias de load-path solo existen en el segundo caso. Un compilador en línea sigue sin ser un bundler — véase también minificadores en línea vs herramientas de build.
En qué se compilan de verdad SCSS y LESS
Una variable se sustituye; los selectores anidados se aplanan. Esa es toda la gracia de un fragmento de revisión de 20 líneas: ver el CSS que un navegador analizará, no el azúcar de autoría.
Antes
Después
Un mixin se copia en cada sitio de inclusión. FastMinify compila las mismas construcciones que en local: @mixin / @include de SCSS, mixins paramétricos de LESS y guards LESS del tipo when (@size > 12px).
Antes
Después
@use 'sass:color' es un módulo integrado: compila en modo pegar. @use './tokens' es un módulo de archivo: suelta la carpeta, elige la entrada y deja que Dart Sass recorra los parciales .scss / .sass alcanzables. LESS no tiene el sistema de módulos de Sass; usa @import de archivos .less locales en modo bundle.
Antes
Después
Compilar en la pestaña: snippet, luego parciales locales, luego CSS
Abre el compilador SCSS o el compilador LESS. Pegar compila automáticamente; después de escribir, pulsa Compilar o ⌘↵ — la compilación en cada pulsación está desactivada a propósito. Tope: 512 KiB para un pegado único.
Paso 1 — Pegar el origen del preprocesador
Sintaxis SCSS con llaves en la herramienta SCSS; LESS en la herramienta LESS. Carga el ejemplo si solo quieres ver el pipeline.
Paso 2 — Ajustar las opciones de salida
SCSS: expanded vs compressed, source map opcional, silenciar deprecations opcional. LESS: compress, source map, strict math, JS inline solo si confías en la fuente.
Paso 3 — Leer el CSS, los bytes y las líneas
El panel de resultado muestra el CSS compilado más los tamaños de entrada/salida. Copia el CSS a la PR, al CMS o a la siguiente herramienta FastMinify.
Elige Bundle project, suelta la carpeta y selecciona un archivo de entrada. Dart Sass resuelve @use / @import locales; Less resuelve @import locales. Las rutas siguen siendo relativas dentro de esa carpeta. Las source maps no están disponibles en el modo bundle v1. Límites: 32 MiB por archivo y 32 MiB en total, una entrada.
La compilación responde a «¿qué CSS es esto?». El formato y el tamaño son herramientas separadas a propósito.
Cuándo basta el navegador — y cuándo sigues necesitando la CLI
Si el grafo de hojas incluye paquetes npm, load paths compartidos o un job de CI, ejecuta el mismo Dart Sass que el navegador — en disco. FastMinify es la vista previa; la CI es la fuente de verdad de lo que contiene el CSS de producción.
Ejemplo básico
less.js en el navegador encaja con un snippet. Un árbol LESS de la era Bootstrap con @import "bootstrap" necesita lessc y los paquetes en disco — FastMinify no los descargará.
Ejemplo básico
Vite compila imports ?inline y .scss a través del grafo de módulos; webpack usa sass-loader / less-loader. Ahí es donde PostCSS, Purge y la minificación CSS pertenecen para una aplicación. Las herramientas del navegador sirven al fragmento aislado y a la carpeta que puedes soltar — no a sustituir el bundler. Compromiso frente a un flujo solo en línea: coste de instalación, pero resolución de paquetes y modo watch.
Sin instalación, sin subida, Dart Sass y less.js en la pestaña, más un bundle local v1 para parciales. Compromiso: pegado de 512 KiB / bundle de 32 MiB, sin npm, sin source maps de bundle. Úsalo para revisar, enseñar y desbloquear una máquina sin Node — luego minifica el CSS si entregas el resultado.
Conclusión
SCSS y LESS siguen ganándose el puesto como lenguajes de autoría — variables, anidación, mixins — pero no deberías necesitar una instalación completa de Node para ver el CSS que emite un fragmento. FastMinify ejecuta Dart Sass y less.js en el navegador, opcionalmente sobre una carpeta soltada de parciales locales, con límites explícitos: sin node_modules, sin source maps de bundle, pegado de 512 KiB / bundle de 32 MiB. Compila y luego formatea o minifica con las herramientas CSS correspondientes. La app de producción sigue en Vite, webpack o la CLI de Sass. Empieza en el hub de preprocesadores CSS y lee la guía de minificación CSS cuando el siguiente problema sea el tamaño — no la sintaxis.
Artículos relacionados

Un contraste insuficiente entre texto y fondo es el error de accesibilidad más frecuente en la web. Comprueba AA/AAA pegando dos colores, sin plugin ni extensión.

Meta description 155 caracteres, title ~60, tweet 280: cuenta palabras y caracteres en el navegador con el contador FastMinify — presets SEO, tiempo de lectura, 100 % local.

Deployment, Service e Ingress: valida la estructura YAML antes de `kubectl apply` — comprobación local en el navegador, sin cluster ni kubectl.