Lightweight SCSS-like CSS preprocessor for browser/real-time use
npm install rics
Core compiler for the rics CSS preprocessor. A fast, lightweight SCSS-like preprocessor that runs anywhere JavaScript runs.
``bash`
npm install rics
`typescript
import { compile } from "rics";
const css = compile(
$primary: #f43f5e;
.button {
background: $primary;
&:hover {
background: darken($primary, 10%);
}
});`
Compiles rics/SCSS input to CSS.
`typescript`
const css = compile(input);
Returns full compilation result including errors, warnings, and stats.
`typescript
const result = compileWithDetails(input);
console.log(result.css);
console.log(result.errors); // CompileError[]
console.log(result.warnings); // CompileWarning[]
console.log(result.stats); // { duration, rules, iterations, inputSize, outputSize }
`
Non-blocking compilation for large inputs.
`typescript`
const result = await compileAsync(largeStylesheet);
`typescript`
compile(input, {
timeout: 5000, // Max compilation time (ms)
maxIterations: 10000, // Max loop iterations
maxNestingDepth: 64, // Max selector nesting
minify: false, // Minify output
strictMode: false, // Throw on first error
});
- Variables and math operations
- Nesting with & parent selector@function
- Mixins with parameters, default values, and named arguments
- Custom functions with and @return@if
- Control flow: , @else, @for, @each, @whiledarken
- Color functions: , lighten, mix, saturate, and more#{}
- String interpolation with
- Native CSS pass-through for modern features
> Auto-generated. Run pnpm bench` in the benchmarks folder to regenerate.
| Preprocessor | ops/sec | Comparison |
|--------------|---------|------------|
| rics | 897 | fastest |
| stylus | 334 | 2.7x slower |
| sass | 279 | 3.2x slower |
| less | 221 | 4.1x slower |
| Package | Size | Dependencies | Comparison |
|---------|------|--------------|------------|
| rics | 12.7 KB | 0 | smallest |
| less | 49.0 KB | 0 | 4x larger |
| stylus | 82.8 KB | 5 | 7x larger |
| sass | 686.0 KB | 1 | 54x larger |
MIT
---
Built by Better Lyrics