Skip to content
PluginStats

eslint-plugin-anti-trojan-source weekly downloads statistics

By lirantal · npm · ESLint plugins

ESLint plugin to detect and stop Trojan Source attacks

View on npm Fresh · Oct 18, 2026

eslint-plugin-anti-trojan-source has 17,592 recorded weekly downloads on npm, a decrease of 27.4% over the past 30 days, ranking #819 of 2,322 tracked listings.

Weekly downloads
17,592
Official API · Oct 18, 2026
7-day growth
-40.4%
-11.9K weekly downloads
30-day growth
-27.4%
-6.6K weekly downloads
90-day growth
-31.2%
-8K weekly downloads
Rank
#819
Among tracked npm listings

About eslint-plugin-anti-trojan-source

<p align="center"><h1 align="center"> eslint-plugin-anti-trojan-source </h1> <p align="center"> ESLint plugin to detect and prevent Trojan Source attacks from entering your codebase </p> <p align="center"> <img src="https://github.com/lirantal/eslint-plugin-anti-trojan-source/raw/main/.github/eslint-plugin-anti-trojan-source-logo.png" height="220"> </p> <p align="center"> <a href="https://www.npmjs.org/package/eslint-plugin-anti-trojan-source"><img src="https://badgen.net/npm/v/eslint-plugin-anti-trojan-source" alt="npm version"/></a> <a href="https://www.npmjs.org/package/eslint-plugin-anti-trojan-source"><img src="https://badgen.net/npm/license/eslint-plugin-anti-trojan-source" alt="license"/></a> <a href="https://www.npmjs.org/package/eslint-plugin-anti-trojan-source"><img src="https://badgen.net/npm/dt/eslint-plugin-anti-trojan-source" alt="downloads"/></a> <a href="https://github.com/lirantal/eslint-plugin-anti-trojan-source/actions/workflows/main.yml"><img src="https://github.com/lirantal/eslint-plugin-anti-trojan-source/actions/workflows/main.yml/badge.svg?branch=main" alt="build"/></a> <a href="./SECURITY.md"><img src="https://img.shields.io/badge/Security-Responsible%20Disclosure-yellow.svg" alt="Responsible Disclosure Policy" /></a> </p>

About

ESLint plugin to detect and stop Trojan Source attacks from entering your codebase.

If you're unaware of what Trojan Source attacks are, or how unicode characters injected into a codebase could be used in malicious ways, refer to the README of the anti-trojan-source source code repository.

This ESLint plugin is based on the library and command-line tool anti-trojan-source.

👋 Jan 2023 Update: This plugin inspired work to create an anti-trojan rule detect-bidi-characters in eslint-plugin-security and if you're already using that security plugin then it is advised to turn on that rule.

Install

npm install --save-dev eslint-plugin-anti-trojan-source

Usage

Once you've installed this plugin, add it to your eslint configuration as follows.

Recommended

This plugin exports a recommended configuration. To enable this configuration, extend it in the configuration for your project.

{
  "extends": ["eslint:recommended", "plugin:anti-trojan-source/recommended"]
}
Manual

First, you need to define it as a plugin:

Note: ESLint plugins can have their eslint-plugin prefix omitted when they are specified.

{
  "plugins": ["anti-trojan-source"]
}

Then, add an ESLint rule that halts if it finds a Trojan Source attack:

"rules": {
    "anti-trojan-source/no-bidi": "error"
}

Following is a complete example of configuration if you are defining ESLint configuration in your package.json file:

"eslintConfig": {
    "plugins": [
        "anti-trojan-source"
    ],
    "rules": {
        "anti-trojan-source/no-bidi": "error"
    }
}

Example output

The following is an example output when the plugin finds a Trojan Source attack in your codebase:

/Users/lirantal/projects/repos/@gigsboat/cli/index.js
  1:1  error  Detected potential trojan source attack with unicode bidi introduced in this comment: '‮ } ⁦if (isAdmin)⁩ ⁦ begin admins only '  anti-trojan-source/no-bidi
  1:1  error  Detected potential trojan source attack with unicode bidi introduced in this comment: ' end admin only ‮ { ⁦'                    anti-trojan-source/no-bidi

/Users/lirantal/projects/repos/@gigsboat/cli/lib/helper.js
  2:1  error  Detected potential trojan source attack with unicode bidi introduced in this code: '"user‮ ⁦// Check if admin⁩ ⁦"'  anti-trojan-source/no-bidi

Documentation

Contributing

Please consult CONTRIBUTING for guidelines on contributing to this project.

Author

eslint-plugin-anti-trojan-source © Liran Tal, Released under the Apache-2.0 License.

Description from the npm listing.

  • eslint
  • eslint-plugin
  • eslintplugin
  • plugin
  • eslint plugin
  • rules
  • trojan
  • trojan source
  • source
  • unicode
  • bidi
  • bidirectional attacks
  • bidi attacks
  • bidi security
  • unicode security
  • attacks
  • security

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

eslint-plugin-anti-trojan-source weekly downloads on npm, last 90 days: 17,592 weekly downloads as of Oct 18, 2026, -31.2% over 90 days.eslint-plugin-anti-trojan-sourceWeekly downloads on npm · Last 90 days17,592downloads / week-31.2% over 90 days15K20K25K30K35K40KJul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18downloads / weekobservedarchived (Internet Archive)no observationsJul 22, 2026 – Oct 18, 2026 · 89 observations · Updated Oc…pluginstats.com
eslint-plugin-anti-trojan-source weekly downloads on npm, last 90 days: 17,592 weekly downloads as of Oct 18, 2026, -31.2% over 90 days.

7/30/90-day growth

eslint-plugin-anti-trojan-source weekly downloads growth on npm: -40.4% over 7 days, -27.4% over 30 days, -31.2% over 90 days.eslint-plugin-anti-trojan-sourceWeekly downloads growth on npm17,592downloads / week now7-day growth-11,929 weekly downloads-40.4%30-day growth-6,644 weekly downloads-27.4%90-day growth-7,965 weekly downloads-31.2%Growth vs. nearest observation to each baseline date · Updated Oct 18, 2026pluginstats.com
eslint-plugin-anti-trojan-source weekly downloads growth on npm: -40.4% over 7 days, -27.4% over 30 days, -31.2% over 90 days.

Ranking history

eslint-plugin-anti-trojan-source npm ranking history: currently #819 (by weekly downloads).eslint-plugin-anti-trojan-sourcenpm ranking · by weekly downloads · Last 90 days#819current rank#200#300#400#500#600#700#800#900Jul 22Aug 6Aug 21Sep 5Sep 20Oct 5Oct 20rankOct 17, 2026 – Oct 20, 2026 · 4 observations · Updated Oct 18, 2026pluginstats.com
eslint-plugin-anti-trojan-source npm ranking history: currently #819 (by weekly downloads).

Listing placement

All npm2,320 listings · 116 pages · 1,162 shown · page 41, #20 (overall #820)
All npm: every listing in weekly downloads order

Listing placement

ESLint plugins256 listings · 13 pages · page 11, #4 (overall #204)
ESLint plugins: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (544)
Recent weekly downloads observations for eslint-plugin-anti-trojan-source
Date (UTC)Weekly downloadsChange vs. previous
17,592+1.5K
16,055-3.9K
19,980+823
19,157-5.2K
24,312-4.2K
28,4620
28,462-1.1K
29,521-1.5K
30,991+981
30,010-159
30,169-1.9K
32,110-1.1K
33,200-6.1K
39,265—

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/eslint-plugin-anti-trojan-source. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.