RepoTrust

esvit/ng-table

Simple table with sorting and filtering on AngularJS

https://github.com/esvit/ng-table · commit b6d5d0bfeef9 · scored 2026-11-13 · scoring prov-4+qual-2+sec-2

RepoTrust ai badge RepoTrust quality badge RepoTrust security badge

Dispute this score or request a re-score Full report JSON

Scores

Pillar Score Signal Confidence Coverage
AI provenance (estimated AI-generated share) 0 none-detected 65% 100%
Code quality 71 adequate 90% 100%
Security 52 weak 85% 100%

AI provenance

No AI attribution or AI-consistent velocity signals detected.

Month Lines added Attributed to AI
2015-09 681 0%
2015-10 383 0%
2015-11 40 0%
2015-12 20,196 0%
2016-01 2,723 0%
2016-06 4,115 0%
2016-07 2,151 0%
2016-08 8,104 0%
2016-09 9 0%
2016-10 88 0%
2016-11 3,477 0%
2016-12 1,689 0%

Evidence

AI provenance describes how code was produced; it is not a quality judgment. Unless attribution is explicit, these are signals consistent with AI generation, not proof. Squash/rebase workflows, imported code, and rewritten history reduce accuracy.

Code quality

Code quality is adequate: test-to-source ratio 0.85, CI runs tests; 5% of function code in complex or long functions; 4% duplicated lines. Weakest area: type safety.

Area Score
Complexity (lizard) 85
Duplication 80
Code smells (Opengrep) 77
Tests and CI 90
Documentation 80
Type safety 0
Process (Scorecard review/maintenance) 0

Most complex functions:

Security

Security posture is weak: 387 known vulnerabilities in 156 dependencies. Weakest area: dependencies.

Area Score
Secrets (gitleaks, tree + history) 100
Static analysis (Opengrep) 83
Vulnerable dependencies (OSV) 0
CI workflows (zizmor) n/a
Posture (policy, updates, signing, lockfiles) 0
OpenSSF Scorecard 25

Top findings

Severity Finding Location
critical osv/GHSA-8w4h-3cm3-2pm2: [email protected] (npm) is affected by GHSA-8w4h-3cm3-2pm2 npm-shrinkwrap.json
critical osv/GHSA-67hx-6x53-jw92: [email protected] (npm) is affected by GHSA-67hx-6x53-jw92 npm-shrinkwrap.json
critical osv/GHSA-67hx-6x53-jw92: [email protected] (npm) is affected by GHSA-67hx-6x53-jw92 npm-shrinkwrap.json
critical osv/GHSA-cpq7-6gpm-g9rc: [email protected] (npm) is affected by GHSA-cpq7-6gpm-g9rc npm-shrinkwrap.json
critical osv/GHSA-vjh7-7g9h-fjfh: [email protected] (npm) is affected by GHSA-vjh7-7g9h-fjfh npm-shrinkwrap.json
critical osv/GHSA-6h5x-7c5m-7cr7: [email protected] (npm) is affected by GHSA-6h5x-7c5m-7cr7 npm-shrinkwrap.json
critical osv/GHSA-fjxv-7rqg-78g4: [email protected] (npm) is affected by GHSA-fjxv-7rqg-78g4 npm-shrinkwrap.json
critical osv/GHSA-fjxv-7rqg-78g4: [email protected] (npm) is affected by GHSA-fjxv-7rqg-78g4 npm-shrinkwrap.json
critical osv/GHSA-fjxv-7rqg-78g4: [email protected] (npm) is affected by GHSA-fjxv-7rqg-78g4 npm-shrinkwrap.json
critical osv/GHSA-8mmm-9v2q-x3f9: [email protected] (npm) is affected by GHSA-8mmm-9v2q-x3f9 npm-shrinkwrap.json
critical osv/GHSA-2w6w-674q-4c4q: [email protected] (npm) is affected by GHSA-2w6w-674q-4c4q npm-shrinkwrap.json
critical osv/GHSA-765h-qjxv-5f44: [email protected] (npm) is affected by GHSA-765h-qjxv-5f44 npm-shrinkwrap.json
critical osv/GHSA-8r5x-fm3f-whwj: [email protected] (npm) is affected by GHSA-8r5x-fm3f-whwj npm-shrinkwrap.json
critical osv/GHSA-f2jv-r9rf-7988: [email protected] (npm) is affected by GHSA-f2jv-r9rf-7988 npm-shrinkwrap.json
critical osv/GHSA-p8wg-vrv2-v86f: [email protected] (npm) is affected by GHSA-p8wg-vrv2-v86f npm-shrinkwrap.json
critical osv/GHSA-w457-6q6x-cgp9: [email protected] (npm) is affected by GHSA-w457-6q6x-cgp9 npm-shrinkwrap.json
critical osv/GHSA-8g7p-74h8-hg48: [email protected] (npm) is affected by GHSA-8g7p-74h8-hg48 npm-shrinkwrap.json
critical osv/GHSA-896r-f27r-55mw: [email protected] (npm) is affected by GHSA-896r-f27r-55mw npm-shrinkwrap.json
critical osv/GHSA-896r-f27r-55mw: [email protected] (npm) is affected by GHSA-896r-f27r-55mw npm-shrinkwrap.json
critical osv/GHSA-76p3-8jx3-jpfq: [email protected] (npm) is affected by GHSA-76p3-8jx3-jpfq npm-shrinkwrap.json
critical osv/GHSA-jf85-cpcp-j695: [email protected] (npm) is affected by GHSA-jf85-cpcp-j695 npm-shrinkwrap.json
critical osv/GHSA-jf85-cpcp-j695: [email protected] (npm) is affected by GHSA-jf85-cpcp-j695 npm-shrinkwrap.json
critical osv/GHSA-jf85-cpcp-j695: [email protected] (npm) is affected by GHSA-jf85-cpcp-j695 npm-shrinkwrap.json
critical osv/GHSA-jf85-cpcp-j695: [email protected] (npm) is affected by GHSA-jf85-cpcp-j695 npm-shrinkwrap.json
critical osv/GHSA-jf85-cpcp-j695: [email protected] (npm) is affected by GHSA-jf85-cpcp-j695 npm-shrinkwrap.json

Static signals only: the scorer never runs the project's code. Secret findings are pattern matches that were not verified, and secret values are never stored.

Repository profile

Language Lines
TypeScript 9,199
JavaScript 3,371

Embed a badge

Maintainers can show these in a README. Badges update when the repository is re-scored.

[![RepoTrust ai](https://repotrust.synapticcyber.com/badge/github.com/esvit/ng-table/ai.svg)](https://repotrust.synapticcyber.com/r/github.com/esvit/ng-table/)
[![RepoTrust quality](https://repotrust.synapticcyber.com/badge/github.com/esvit/ng-table/quality.svg)](https://repotrust.synapticcyber.com/r/github.com/esvit/ng-table/)
[![RepoTrust security](https://repotrust.synapticcyber.com/badge/github.com/esvit/ng-table/security.svg)](https://repotrust.synapticcyber.com/r/github.com/esvit/ng-table/)