Repository Analysis

KaTeX/KaTeX

Fast math typesetting for the web.

1.2 Likely human-written View on GitHub
1.2
Adjusted Score
1.2
Raw Score
100%
Time Factor
2026-05-30
Last Push
20,114
Stars
TypeScript
Language
44,195
Lines of Code
217
Files
37
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 1MEDIUM 3LOW 33

Pattern Findings

37 matches across 8 categories. Click a row to expand file-level details.

Over-Commented Block19 hits · 19 pts
SeverityFileLineSnippet
LOWupdate-sri.js1// Update badge and CDN urls and subresource integrity hashes
LOWtest/screenshotter/ss_data.yaml1# List of test cases for which we create screenshots and other documents.
LOWwebsite/static/css/custom.css141 #spacing-tbl td:nth-of-type(4)::before { content: "Produces:"; }
LOWwebsite/static/css/custom.css161 #unit-blocks td:nth-of-type(2)::before { content: "textstyle:"; }
LOWcontrib/mhchem/mhchem.js101 //
LOWcontrib/mhchem/mhchem.js121 // buffer.rdt == arrow, script above, type
LOWcontrib/mhchem/mhchem.js181 //
LOWsrc/delimiter.ts821 // Math.floor(655360 * maxDistFromAxis / 500) *
LOWsrc/buildCommon.ts461type VListParam = {
LOWsrc/stretchy.ts81// distortion of arrowheads or brace corners.
LOWsrc/unicodeScripts.ts41 name: 'armenian',
LOWsrc/macros.ts341//////////////////////////////////////////////////////////////////////
LOWsrc/macros.ts541// Spacing, based on amsmath.sty's override of LaTeX defaults
LOWsrc/macros.ts561defineMacro("\\thickspace", "\\;");
LOWsrc/macros.ts621// TODO: Doesn't normally work in math mode because \@ fails. KaTeX doesn't
LOWsrc/fontMetrics.ts21// provided in the arrays below, in that order.
LOWsrc/svgGeometry.ts1/**
LOWsrc/buildMathML.ts321
LOWsrc/types/index.ts1export type Mode = "math" | "text";
Verbosity Indicators7 hits · 15 pts
SeverityFileLineSnippet
LOWdockers/texcmp/texcmp.js95 // Step 1: write key.tex file
LOWdockers/texcmp/texcmp.js97 // Step 2: call "pdflatex key" to create key.pdf
LOWdockers/texcmp/texcmp.js103 // Step 3: call "convert ... key.pdf key.png" to create key.png
LOWdockers/texcmp/texcmp.js110 // Step 4: apply FFT to that
LOWdockers/texcmp/texcmp.js113 // Step 5: apply FFT to reference image as well
LOWdockers/texcmp/texcmp.js118 // Step 6: find alignment which maximizes overlap.
LOWdockers/texcmp/texcmp.js166 // Step 7: use these offsets to compute difference illustration
Decorative Section Separators2 hits · 6 pts
SeverityFileLineSnippet
MEDIUMsrc/functions/horizBrace.ts41 // Generate the vlist, with the appropriate kerns ┏━━━━━━━━┓
MEDIUMsrc/functions/horizBrace.ts74 // ┏━━━━━━━━┓ or ┏━━━┓ not ┏━━━━━━━━━┓
Cross-Language Confusion (JS/TS)1 hit · 5 pts
SeverityFileLineSnippet
HIGHtest/setup.ts34 print(val: unknown) {
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippet
MEDIUM.yarn/sdks/integrations.yml1# This file is automatically generated by @yarnpkg/sdks.
Fake / Example Data3 hits · 3 pts
SeverityFileLineSnippet
LOWcontrib/auto-render/test/auto-render-spec.ts354 const textNodes = ['Lorem ipsum dolor',
LOWstatic/index.html73 placeholder="Lorem ipsum"
LOWstatic/index.html80 placeholder="Lorem ipsum"
Hyper-Verbose Identifiers2 hits · 2 pts
SeverityFileLineSnippet
LOWstatic/main.js86 function getClampedMobileOptionsHeight(height) {
LOWstatic/main.js129 function getCurrentMobileOptionsHeight() {
Unused Imports2 hits · 2 pts
SeverityFileLineSnippet
LOWsrc/fonts/generate_fonts.py5
LOWsrc/fonts/generate_fonts.py8