On this page
Overview
Stylus is a stylesheet language that supports both indentation-based syntax and regular CSS style. Its Node.js package and stylus CLI compile .styl sources into CSS.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Choose indented syntax or regular CSS style
The README explicitly supports both indented syntax and regular CSS-style input, allowing codebases to choose the level of terseness they prefer.
Sources: [2]
Compile and watch files with the stylus CLI
The CLI compiles .styl files to CSS and can use -w to rebuild output while source files change.
Sources: [2]
Integrate the npm package into Node-based builds
The package exposes a JavaScript API and the stylus binary for use in Node-oriented asset pipelines.
Sources: [3]
Best fit
Fits frontend codebases preserving existing Stylus assets or concise indentation-based styles
It is useful for teams with accumulated .styl files, Stylus-specific mixins, or functions that still need to compile under a Node toolchain.
Sources: [2]
Before adoption
Version 0.64.0 requires Node.js 16 or later
Package metadata declares Node >=16, and the 0.64.0 release notes explicitly say Node 14 support was dropped.
Official sources
- [1]stylus/stylus repository(2026-10-05)
- [2]Stylus 0.64.0 README(2026-10-05)
- [3]Stylus 0.64.0 package metadata(2026-10-05)
- [4]Stylus 0.64.0 release(2026-10-05)
- [5]Stylus MIT license(2026-10-05)
Supplemental curator note
Stylus 0.64.0 requires Node.js 16 or later and its release notes explicitly drop Node 14 support. The latest stable release is from October 2024, so new adoption should also test compatibility with the current bundler/plugin stack.
Try it in 3 steps
- 1
Install Stylus 0.64.0 in an isolated project
Pin the stable release in a temporary project on Node.js 16 or later.
demo=$(mktemp -d "${TMPDIR:-/tmp}/stylus.XXXXXX") && cd "$demo" && npm init -y >/dev/null && npm install --save-exact --save-dev stylus@0.64.0 - 2
Create a Stylus file using indented syntax
Create a minimal source using Stylus indentation, a variable, and a nested selector.
printf "%s\n" 'accent = #663399' '.card' ' color accent' ' &:hover' ' color white' > input.styl - 3
Compile it to CSS with the stylus CLI
Generate CSS with version 0.64.0 and confirm the indented nested rule became regular CSS.
npx stylus input.styl -o output.css && grep -q ".card:hover" output.css
Growth
Growth trends · Last 30 days
11,333 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 0
- Open PRs
- 25
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- stylus
- css
- preprocessor
- styl
- Stars
- 11,333
- Forks
- 1,137
- Watchers
- 325
- Open issues
- 257
- Contributors
- 181
- Owner type
- Organization
- Primary language
- JavaScript
- License
- MIT
- Repository last updated
- Apr 24, 2025
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- js-cookie22,573 Stars
3 shared tag(s) · 1 shared category(s) · Same language
manage browser cookie creation, reads, removal, and attributes through a small JavaScript API
JavaScript - i18next8,637 Stars
3 shared tag(s) · 1 shared category(s) · Same language
keep translation keys, plurals, interpolation, and resource loading independent of the UI framework
JavaScript - Tauri111,593 Stars
3 shared tag(s) · 1 shared category(s)
Combine a web frontend and Rust native layer into desktop and mobile apps using system WebViews
Rust - Storybook91,200 Stars
3 shared tag(s) · 1 shared category(s)
capture UI states once and reuse them across docs, interaction tests, and agent tooling
TypeScript - Animate.css82,849 Stars
3 shared tag(s) · 1 shared category(s)
apply reusable CSS animations to UI elements by adding classes
CSS - normalize.css53,505 Stars
3 shared tag(s) · 1 shared category(s)
reduce browser inconsistencies while preserving useful native defaults
CSS
Report incorrect information
Tell us if any listing information is incorrect or outdated.