NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2924 most downloaded on npm
Parse CSS media query lists.
Last release 9 days ago
01 Oct 2026
Release timing varies
gaps range from 9 days to 8 months
Nearly every release is documented
notes for 29 of 29 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
29 releases · first in 2022
One column per quarter.
Fix type predicate for isCustomMedia
October 1, 2026
isCustomMedia@csstools/css-parser-algorithms to 4.0.2 (patch)Throw when a media query exceeds the maximum number of component values.
September 25, 2026
@csstools/css-tokenizer to 4.0.1 (patch)@csstools/css-tokenizer to 4.0.2 (patch)@csstools/css-parser-algorithms to 4.0.1 (patch)Updated: Support for Node 20.19.0 or later (major).
January 14, 2026
20.19.0 or later (major).commonjs API. In supported Node versions require(esm) will work without needing to make code changes.@csstools/css-tokenizer to 4.0.0 (major)@csstools/css-parser-algorithms to 4.0.0 (major)Updated `@csstools/css-tokenizer` to `3.0.4` (patch)
May 27, 2025
@csstools/css-tokenizer to 3.0.4 (patch)@csstools/css-parser-algorithms to 3.0.5 (patch)Updated `@csstools/css-tokenizer` to `3.0.3` (patch)
November 1, 2024
@csstools/css-tokenizer to 3.0.3 (patch)@csstools/css-parser-algorithms to 3.0.4 (patch)Updated `@csstools/css-parser-algorithms` to `3.0.3` (patch)
October 23, 2024
@csstools/css-parser-algorithms to 3.0.3 (patch)MediaQuery.prototype.negateQuery() now returns an array of MediaQuery. e.g. negating screen and (color) returns ['not screen', 'not (color)']
October 10, 2024
MediaQuery.prototype.negateQuery() now returns an array of MediaQuery. e.g. negating screen and (color) returns ['not screen', 'not (color)']@csstools/css-tokenizer to 3.0.2 (patch)@csstools/css-parser-algorithms to 3.0.2 (patch)Updated `@csstools/css-tokenizer` to `3.0.1` (patch)
August 18, 2024
@csstools/css-tokenizer to 3.0.1 (patch)@csstools/css-parser-algorithms to 3.0.1 (patch)Updated: Support for Node v18+ (major).
August 3, 2024
@csstools/css-tokenizer to 3.0.0 (major)@csstools/css-parser-algorithms to 3.0.0 (major)Updated `@csstools/css-tokenizer` to `2.4.1` (patch)
July 6, 2024
@csstools/css-tokenizer to 2.4.1 (patch)@csstools/css-parser-algorithms to 2.7.1 (patch)Updated `@csstools/css-tokenizer` to `2.3.2` (patch)
June 29, 2024
@csstools/css-tokenizer to 2.3.2 (patch)@csstools/css-parser-algorithms to 2.7.0 (minor)Updated `@csstools/css-tokenizer` to `2.3.1` (patch)
May 4, 2024
@csstools/css-tokenizer to 2.3.1 (patch)@csstools/css-parser-algorithms to 2.6.3 (patch)Updated `@csstools/css-tokenizer` to `2.3.0` (minor)
May 4, 2024
@csstools/css-tokenizer to 2.3.0 (minor)@csstools/css-parser-algorithms to 2.6.2 (patch)Updated `@csstools/css-tokenizer` to `2.2.4` (patch)
March 13, 2024
@csstools/css-tokenizer to 2.2.4 (patch)@csstools/css-parser-algorithms to 2.6.1 (patch)Updated `@csstools/css-parser-algorithms` to `2.6.0` (minor)
February 19, 2024
@csstools/css-parser-algorithms to 2.6.0 (minor)Updated `@csstools/css-tokenizer` to `2.2.3` (patch)
December 31, 2023
@csstools/css-tokenizer to 2.2.3 (patch)@csstools/css-parser-algorithms to 2.5.0 (minor)Only walk child nodes if they are still part of the current AST tree #1202
December 15, 2023
walk child nodes if they are still part of the current AST tree #1202walk methods safe for mutations #1204@csstools/css-tokenizer to 2.2.2 (patch)@csstools/css-parser-algorithms to 2.4.0 (minor)Updated `@csstools/css-tokenizer` to `2.2.1` (patch)
September 24, 2023
@csstools/css-tokenizer to 2.2.1 (patch)@csstools/css-parser-algorithms to 2.3.2 (patch)Do not allow keywords as media feature values in range context queries.
August 5, 2023
Updated `@csstools/css-tokenizer` to `2.2.0` (minor)
July 24, 2023
@csstools/css-tokenizer to 2.2.0 (minor)@csstools/css-parser-algorithms to 2.3.1 (patch)Updated `@csstools/css-parser-algorithms` to `2.3.0` (minor)
July 3, 2023
@csstools/css-parser-algorithms to 2.3.0 (minor)Fix parsing of (width == 100px). This was erroneously parsed as a range query and will now instead be a general enclosed node.
June 21, 2023
(width == 100px). This was erroneously parsed as a range query and will now instead be a general enclosed node.Fix walk for MediaFeatureValue with complex component values.
June 1, 2023
walk for MediaFeatureValue with complex component values.state to walk methods.This makes it possible pass down information from a parent structure to children.
e.g. you can set entry.state.inInPrintQuery = true for print and (min-width: 30cm).
Updated @csstools/css-tokenizer to 2.1.1 (patch)
April 10, 2023
@csstools/css-tokenizer to 2.1.1 (patch)@csstools/css-parser-algorithms to 2.1.1 (patch)Add support for env() functions as values in media queries.
April 10, 2023
env() functions as values in media queries.Improve case insensitive string matching.
March 25, 2023
Improve types declaration in package.json
January 28, 2023
types declaration in package.jsonRefactor MediaFeatureBoolean so that it follows the same structure as MediaFeaturePlain (breaking)
January 19, 2023
MediaFeatureBoolean so that it follows the same structure as MediaFeaturePlain (breaking)ParseError interface, this is now a subclass of Error (breaking)getName and getNameToken to all nodes that have a feature name.@custom-media parsing._November 14, 2022_ - Initial version
November 14, 2022
Your coding agent can read these notes before it upgrades. Set up the MCP server →