
Security News
ESLint Adds Official Support for Linting HTML
ESLint now supports HTML linting with 48 new rules, expanding its language plugin system to cover more of the modern web development stack.
@babel/code-frame
Advanced tools
Generate errors that contain a code frame that point to source locations.
The @babel/code-frame package is used to generate a string representing code with a specific error highlighted. It is often used to produce more readable error messages in development tools by showing the code snippet where an error has occurred along with line and column numbers.
Highlighting syntax errors in code
This feature allows developers to highlight syntax errors in their code. The code sample shows how to use the codeFrameColumns function to generate a string that highlights the location of an error in the source code.
const { codeFrameColumns } = require('@babel/code-frame');
const rawLines = `class Foo {
constructor()
}
`;
const location = { start: { line: 2, column: 15 } };
const result = codeFrameColumns(rawLines, location, {
highlightCode: true
});
console.log(result);
Chalk is a popular npm package for styling terminal strings. While it doesn't generate code frames, it can be used to colorize text and could be combined with other tools to highlight specific parts of code in the terminal.
Cardinal is a syntax highlighter for JavaScript code that can be used in the terminal. It's similar to @babel/code-frame in that it can be used to make code more readable, but it focuses on syntax highlighting rather than pinpointing specific locations of errors.
Highlight.js is a syntax highlighter for the web. It supports many languages and can be used to highlight code blocks on web pages. Unlike @babel/code-frame, it is not specifically designed for highlighting error locations, but it can be used to enhance the readability of code snippets.
Generate errors that contain a code frame that point to source locations.
See our website @babel/code-frame for more information.
Using npm:
npm install --save-dev @babel/code-frame
or using yarn:
yarn add @babel/code-frame --dev
v7.27.1 (2025-04-30)
babel-parser
babel-parser
, babel-types
babel-plugin-proposal-destructuring-private
, babel-plugin-proposal-do-expressions
, babel-traverse
babel-helper-wrap-function
, babel-plugin-transform-async-to-generator
babel-helper-remap-async-to-generator
, babel-plugin-transform-async-to-generator
babel-helper-fixtures
, babel-parser
babel-generator
, babel-parser
babel-parser
babel-compat-data
, babel-preset-env
babel-traverse
babel-generator
babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining
, babel-plugin-proposal-decorators
, babel-plugin-transform-arrow-functions
, babel-plugin-transform-class-properties
, babel-plugin-transform-destructuring
, babel-plugin-transform-object-rest-spread
, babel-plugin-transform-optional-chaining
, babel-plugin-transform-parameters
, babel-traverse
babel-runtime-corejs2
, babel-runtime-corejs3
, babel-runtime
regenerator-runtime
dep in @babel/runtime
(@nicolo-ribaudo)babel-compat-data
, babel-preset-env
babel-compat-data
, babel-standalone
babel-register
@babel/register
to cts (@liuxingbaoyu)babel-cli
, babel-compat-data
, babel-core
, babel-generator
, babel-helper-compilation-targets
, babel-helper-fixtures
, babel-helper-module-imports
, babel-helper-module-transforms
, babel-helper-plugin-test-runner
, babel-helper-transform-fixture-test-runner
, babel-helpers
, babel-node
, babel-parser
, babel-plugin-transform-modules-amd
, babel-plugin-transform-modules-commonjs
, babel-plugin-transform-modules-systemjs
, babel-plugin-transform-modules-umd
, babel-plugin-transform-react-display-name
, babel-plugin-transform-regenerator
, babel-plugin-transform-runtime
, babel-plugin-transform-typeof-symbol
, babel-plugin-transform-typescript
, babel-preset-env
, babel-register
, babel-standalone
, babel-types
babel-plugin-transform-regenerator
babel-helpers
, babel-plugin-transform-async-generator-functions
, babel-plugin-transform-regenerator
, babel-preset-env
, babel-runtime-corejs3
babel-helpers
, babel-plugin-transform-regenerator
babel-helpers
babel-helpers
, babel-plugin-transform-modules-commonjs
, babel-runtime-corejs3
interopRequireWildcard
size (@liuxingbaoyu)babel-helpers
, babel-plugin-transform-async-generator-functions
, babel-plugin-transform-regenerator
, babel-preset-env
, babel-runtime-corejs3
regeneratorRuntime
size (@liuxingbaoyu)FAQs
Generate errors that contain a code frame that point to source locations.
The npm package @babel/code-frame receives a total of 58,788,073 weekly downloads. As such, @babel/code-frame popularity was classified as popular.
We found that @babel/code-frame demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
ESLint now supports HTML linting with 48 new rules, expanding its language plugin system to cover more of the modern web development stack.
Security News
CISA is discontinuing official RSS support for KEV and cybersecurity alerts, shifting updates to email and social media, disrupting automation workflows.
Security News
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.