Registry / testing / ember-eslint-parser

ember-eslint-parser

JSON →
library0.10.0jsnpmunverified

ember-eslint-parser is a specialized ESLint parser designed to understand and lint Ember.js specific file formats: Glimmer JavaScript (`.gjs`), Glimmer TypeScript (`.gts`), and Handlebars (`.hbs`) template files. As of its current stable version, 0.10.0, released in April 2026, it receives frequent minor updates, often monthly or bi-monthly, reflecting active development. The parser works in conjunction with `eslint-plugin-ember` to provide comprehensive static analysis for Ember applications. Its key differentiator is the ability to parse embedded Glimmer templates within JavaScript/TypeScript files and traditional Handlebars templates, enabling a unified linting experience across an Ember project's varied file types, particularly crucial for modern Ember Octane and Polaris applications.

testing
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

This is configured as a string in ESLint's `parser` option for .gjs and .gts files. It is not directly imported into user JavaScript/TypeScript.

{ files: ['**/*.gjs', '**/*.gts'], parser: 'ember-eslint-parser' }

Used in ESLint's flat config (`eslint.config.mjs`) for Handlebars (`.hbs`) files. Requires ESM syntax for import.

import hbsParser from 'ember-eslint-parser/hbs';

This ESLint flat configuration demonstrates how to enable `ember-eslint-parser` for Glimmer JavaScript (.gjs), Glimmer TypeScript (.gts), and Handlebars (.hbs) files, integrating with `eslint-plugin-ember` recommended presets.

import hbsParser from 'ember-eslint-parser/hbs'; export default [ { files: ['**/*.gjs'], parser: 'ember-eslint-parser', plugins: ['ember'], extends: [ 'eslint:recommended', 'plugin:ember/recommended', 'plugin:ember/recommended-gjs' ] }, { files: ['**/*.gts'], parser: 'ember-eslint-parser', plugins: ['ember'], extends: [ 'eslint:recommended', 'plugin:ember/recommended', 'plugin:ember/recommended-gts' ] }, { files: ['**/*.hbs'], languageOptions: { parser: hbsParser } } ];
Debug
Known footguns
gotchaSemVer compatibility is primarily maintained for `eslint-plugin-ember`. Other direct consumers of `ember-eslint-parser` may experience breaking changes outside of typical SemVer expectations.
breakingWhen linting Glimmer TypeScript (.gts) files, `ember-eslint-parser` requires `@typescript-eslint/parser` to be discoverable in the project's dependencies. If not found, it will throw an error.
gotchaIn traditional Handlebars (`.hbs`) files, all undeclared locals are assumed to be defined at runtime. This behavior is by design to prevent `no-undef` errors but limits static analysis capabilities compared to `.gjs`/`.gts`.
breakingVersion 0.7.0 introduced API compatibility fixes for `content-tag` v4, `html-tags` v5, and `mathml-tag-names` v4. Projects using older versions of these underlying libraries might experience issues.
breakingVersion 0.5.9 provided a fix for lint-fixing with `typescript-eslint` version 8. Older versions of `ember-eslint-parser` may have had compatibility issues or unexpected behavior with `typescript-eslint` v8.
Upgrade
Version history

Breaking-change detection hasn't run for this library yet.

Audit
Security & dependencies

CVE tracking and dependency tree are planned for a later release.

Agent activity
9 hits · last 30 days
gptbot
4
ahrefsbot
4
script
1
Resources