javascript

package
v1.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 5, 2026 License: MIT Imports: 19 Imported by: 0

Documentation

Overview

Package javascript provides JavaScript/TypeScript language support for code analysis.

Package javascript provides JavaScript/TypeScript language support for code analysis.

Package javascript provides JavaScript/TypeScript language support for code analysis.

Package javascript provides JavaScript/TypeScript language support for code analysis.

Package javascript provides JavaScript/TypeScript language support for code analysis.

This package implements the language.Language interface for JavaScript and TypeScript, using tree-sitter for parsing and custom detectors for anti-pattern detection. A single language handler ("javascript") parses both JS and TS using the TypeScript grammar.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CoverageRunner

type CoverageRunner struct {
	// contains filtered or unexported fields
}

CoverageRunner executes JavaScript/TypeScript test coverage using Jest, Vitest, or npm test.

func NewCoverageRunner

func NewCoverageRunner(timeoutSeconds int, statusReporter status.Reporter) *CoverageRunner

NewCoverageRunner creates a new JavaScript/TypeScript coverage runner.

func (*CoverageRunner) RunCoverage

func (r *CoverageRunner) RunCoverage(projectPath string, excludePatterns []string) ([]*coverage.PackageCoverage, error)

RunCoverage executes tests and extracts coverage for the project.

type DependencyAnalyzer

type DependencyAnalyzer struct {
	// contains filtered or unexported fields
}

DependencyAnalyzer analyzes JavaScript/TypeScript package dependencies.

func NewDependencyAnalyzer

func NewDependencyAnalyzer(projectPath string) (*DependencyAnalyzer, error)

NewDependencyAnalyzer creates a new JavaScript/TypeScript dependency analyzer.

func (*DependencyAnalyzer) Analyze

Analyze analyzes dependencies across all files.

func (*DependencyAnalyzer) DetectCircularDependencies

func (a *DependencyAnalyzer) DetectCircularDependencies(files []*parser.FileMetrics) ([]*dependencies.CircularDependency, error)

DetectCircularDependencies finds circular import chains in JavaScript/TypeScript code.

type JavaScriptDetectorRunner

type JavaScriptDetectorRunner struct {
	// contains filtered or unexported fields
}

JavaScriptDetectorRunner implements language.DetectorRunner for JavaScript/TypeScript source code.

func NewDetectorRunner

func NewDetectorRunner(cfg *config.AnalysisConfig) *JavaScriptDetectorRunner

NewDetectorRunner creates a new detector runner for JavaScript/TypeScript source code.

func (*JavaScriptDetectorRunner) RunDetectors

RunDetectors parses a JavaScript/TypeScript file and runs all enabled detectors.

type JavaScriptLanguage

type JavaScriptLanguage struct{}

JavaScriptLanguage implements language.Language for JavaScript/TypeScript source code.

func (*JavaScriptLanguage) CoverageRunner

func (j *JavaScriptLanguage) CoverageRunner(cfg *config.AnalysisConfig, statusReporter status.Reporter) language.CoverageRunner

CoverageRunner returns a JavaScript/TypeScript test coverage runner. Supports Jest and Vitest test frameworks.

func (*JavaScriptLanguage) DefaultExcludePatterns

func (j *JavaScriptLanguage) DefaultExcludePatterns() []string

DefaultExcludePatterns returns JavaScript/TypeScript-specific exclude patterns.

func (*JavaScriptLanguage) DependencyAnalyzer

func (j *JavaScriptLanguage) DependencyAnalyzer(projectPath string) (language.DependencyAnalyzer, error)

DependencyAnalyzer returns a JavaScript/TypeScript dependency analyzer.

func (*JavaScriptLanguage) DetectorRunner

DetectorRunner returns a JavaScript/TypeScript-specific detector runner.

func (*JavaScriptLanguage) DisplayName

func (j *JavaScriptLanguage) DisplayName() string

DisplayName returns "JavaScript/TypeScript".

func (*JavaScriptLanguage) Extensions

func (j *JavaScriptLanguage) Extensions() []string

Extensions returns all JavaScript and TypeScript file extensions.

func (*JavaScriptLanguage) Name

func (j *JavaScriptLanguage) Name() string

Name returns "javascript".

func (*JavaScriptLanguage) Parser

func (j *JavaScriptLanguage) Parser() parser.Parser

Parser returns a tree-sitter based JavaScript/TypeScript parser.

type JavaScriptParser

type JavaScriptParser struct {
	// contains filtered or unexported fields
}

JavaScriptParser implements parser.Parser for JavaScript/TypeScript source files using tree-sitter.

func NewParser

func NewParser() *JavaScriptParser

NewParser creates a new JavaScript/TypeScript parser.

func (*JavaScriptParser) ParseDirectory

func (p *JavaScriptParser) ParseDirectory(rootPath string, excludePatterns []string, extensions []string, statusReporter status.Reporter) ([]*parser.FileMetrics, []error)

ParseDirectory recursively parses all JavaScript/TypeScript files in a directory.

func (*JavaScriptParser) ParseFile

func (p *JavaScriptParser) ParseFile(path string) (*parser.FileMetrics, error)

ParseFile parses a single JavaScript/TypeScript file and extracts comprehensive metrics.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL