Developer Tools · head to head
ESLint vs Semperis

Semperis
Cybersecurity
Identity threat detection and Active Directory forest recovery for AD, Entra ID and Okta, from a privately held US vendor.
- From
- On request
- Free plan
- No
The short version
- Only ESLint has a free tier, so it costs nothing to try first.
- Each has a real cost: ESLint slow performance on large codebases compared to newer tools like Oxlint and Biome; Semperis scope is limited to Active Directory, Entra ID and Okta, so an organisation whose critical identity lives elsewhere gets little from it, and the recovery value declines in direct proportion to how much has already moved off on-premises AD.
- Prices and features above were last checked on 30 August 2026.
Where they differ
Only the attributes on which ESLint and Semperis actually diverge.
Identical on both: user rating (Not yet rated).
What each one covers
Drawn from each product's published feature list. An absence here means we hold no record of it - not that the product lacks it.
Only in ESLint
Nothing recorded that Semperis does not also cover.
Only in Semperis
- Active Directory Forest Recovery
- Malware-free restore
- Replication-stream monitoring
- Automated rollback
- Attack indicator scoring
- Entra ID and Okta coverage
- Purple Knight
- Forest Druid
What people use each for
The jobs each tool is most often brought in to do.
ESLint
- Statically analysing JavaScript and JSX to find problems before runtimenot Semperis
- Automatically fixing issues with syntax-aware rewritesnot Semperis
- Enforcing a consistent code style across a teamnot Semperis
- Running as a CI step to block non-conforming codenot Semperis
- Writing custom rules for project-specific conventionsnot Semperis
Semperis
- An organisation that cannot answer an auditor or insurer asking how long it would take to rebuild Active Directory after a destructive attacknot ESLint
- Post-incident recovery where domain controllers are compromised and restoring from system-state backup would reintroduce the attacker's footholdnot ESLint
- Continuous detection of privileged group changes and directory-level tampering that domain controller security logs missnot ESLint
- Hybrid estates where AD, Entra ID and Okta all matter and no single tool currently shows changes across the threenot ESLint
Where each one falls short
Documented limitations, not opinions. Every one is a constraint you would hit in normal use.
ESLint
- Slow performance on large codebases compared to newer tools like Oxlint and Biome
- Complexity in configuration from scratch, particularly for TypeScript support
- Limited built-in TypeScript support, requiring separate parsers and coordination with new TypeScript features
Semperis
- Scope is limited to Active Directory, Entra ID and Okta, so an organisation whose critical identity lives elsewhere gets little from it, and the recovery value declines in direct proportion to how much has already moved off on-premises AD.
- The licence buys tooling, not a proven runbook: forest recovery is only worth what your last rehearsal demonstrated, and a plan that has never been executed end to end in a lab is an untested assumption regardless of what was purchased.
- It overlaps with backup and directory management products from Quest, Veeam, Commvault and others, so the buyer must argue internally why a dedicated product is needed alongside a backup contract that already claims to protect Active Directory.
- Running Directory Services Protector well requires someone who understands AD internals, replication metadata and Tier 0 attack paths, and without that person the alerts on privileged changes are either ignored or auto-reverted in ways that break legitimate administration.
- Licensing is driven by identity object counts, so directories carrying years of stale user accounts and service principals pay for objects that should have been deleted, and the cleanup project that would reduce the bill is the one nobody has time for.
Pricing, plan by plan
ESLint
FreeNo published plan breakdown. See the ESLint review.
Semperis
On requestNo published plan breakdown. See the Semperis review.
Which should you pick?
Choose ESLint if
- You want to start without paying.
- You work on Browser-based JavaScript, Node.js, Any JavaScript environment.
Choose Semperis if
- You need active directory forest recovery.
- You also want malware-free restore.
Questions people ask
- Is ESLint or Semperis better?
- Neither clearly leads. ESLint starts at Free and Semperis at On request, and user ratings are close enough to be indistinguishable. Choose on capability and platform support.
- Which is cheaper, ESLint or Semperis?
- ESLint has a free tier; the other does not. Paid plans start at Free for ESLint and On request for Semperis.
- Does ESLint or Semperis run on more platforms?
- ESLint runs on Browser-based JavaScript, Node.js, Any JavaScript environment. Semperis runs on Web.
- Can I use ESLint for free?
- Yes. ESLint has a free tier, so you can try it without paying. Semperis starts at On request.
- What is ESLint best used for?
- ESLint is most often used for statically analysing javascript and jsx to find problems before runtime, automatically fixing issues with syntax-aware rewrites, enforcing a consistent code style across a team, running as a ci step to block non-conforming code. Of those, statically analysing javascript and jsx to find problems before runtime and automatically fixing issues with syntax-aware rewrites are not what Semperis is typically brought in for.
- What can ESLint do that Semperis cannot?
- Semperis covers Active Directory Forest Recovery, Malware-free restore, Replication-stream monitoring, Automated rollback.
Answered from the vendors’ own pages
ESLint: Does ESLint automatically fix code issues?
Many problems ESLint finds can be automatically fixed via the --fix flag. ESLint fixes are syntax-aware so you won't experience errors introduced by traditional find-and-replace algorithms.
SourceSemperis: Does this replace my backups?
No. It replaces the Active Directory recovery procedure specifically. You still need backups for everything else, and the point of Semperis is that a generic system-state backup of a domain controller is a poor way to recover a forest because it restores the operating system along with whatever compromised it.
ESLint: How much does ESLint cost?
ESLint is completely free and open-source software maintained by the OpenJS Foundation. The project accepts voluntary donations from sponsors.
SourceSemperis: Is it useful if we are cloud-only on Entra ID?
Partly. Directory Services Protector covers Entra ID and Okta for change tracking and posture, but the forest recovery product, which is the strongest reason to buy, applies to on-premises Active Directory. A genuinely cloud-only organisation should weigh it against Microsoft's own tooling.
ESLint: Can I write custom ESLint rules?
Yes. You can develop custom rules that work alongside built-in functionality through ESLint's plugin system, allowing complete customization for your project needs.
SourceSemperis: Are Purple Knight and Forest Druid really free?
Yes, both are free downloads with no licence requirement, and they are widely used by organisations that are not Semperis customers. They are also, transparently, the top of the sales funnel.
Semperis: How long does forest recovery actually take?
The honest answer is whatever your rehearsal took. The vendor's case is hours instead of days, and automation genuinely removes most manual steps, but the number that matters for your board is the one from a test in your own environment.
Semperis: Does it require agents on domain controllers?
It collects directory changes from the AD replication stream, which is what lets it see changes that bypass the security log. Deployment details vary by product and version, so confirm the exact architecture against your domain controller change-control rules.
Related pages
Other head to heads
- ESLint vs Turborepo
- ESLint vs Prettier
- ESLint vs Deno
- ESLint vs Fig
- ESLint vs Vite
- ESLint vs Harness
- ESLint vs Ansible
- ESLint vs Buildkite
- ESLint vs Argo CD
- ESLint vs GitLab CI/CD
- ESLint vs HCP Terraform
- ESLint vs Helm
- ESLint vs Earthly
- ESLint vs Eclipse IDE
- ESLint vs Moonrepo
- ESLint vs Nx Cloud
- ESLint vs Pants Build
- ESLint vs Bitdefender Total Security
- ESLint vs 1Password
- ESLint vs Norton 360
- ESLint vs LastPass
- ESLint vs NICE Actimize
- ESLint vs Netwrix
- ESLint vs VMware Carbon Black
- ESLint vs LogRhythm SIEM
- ESLint vs One Identity
- ESLint vs Ping Identity
- ESLint vs Signicat
- ESLint vs CrowdStrike Falcon
- ESLint vs Authy
- ESLint vs Baffle
- ESLint vs Beyond Identity
- ESLint vs BeyondTrust
- ESLint vs Burp Suite
- ESLint vs Bitdefender VPN
- Semperis vs Turborepo
- Semperis vs Prettier
- Semperis vs Deno
- Semperis vs Fig
- Semperis vs Vite
- Semperis vs Harness
- Semperis vs Ansible
- Semperis vs Buildkite
- Semperis vs Argo CD
- Semperis vs GitLab CI/CD
- Semperis vs HCP Terraform
- Semperis vs Helm
- Semperis vs Earthly
- Semperis vs Eclipse IDE
- Semperis vs Moonrepo
- Semperis vs Nx Cloud
- Semperis vs Pants Build
- Semperis vs Bitdefender Total Security
- Semperis vs 1Password
- Semperis vs Norton 360
- Semperis vs LastPass
- Semperis vs NICE Actimize
- Semperis vs Netwrix
- Semperis vs VMware Carbon Black
- Semperis vs LogRhythm SIEM
- Semperis vs One Identity
- Semperis vs Ping Identity
- Semperis vs Signicat
- Semperis vs CrowdStrike Falcon
- Semperis vs Authy
- Semperis vs Baffle
- Semperis vs Beyond Identity
- Semperis vs BeyondTrust
- Semperis vs Burp Suite
- Semperis vs Bitdefender VPN

