CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-autod

Auto generate dependencies by parsing JavaScript project files and fetching latest versions from npm registry

Pending

Quality

Pending

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Pending

The risk profile of this skill

Overview
Eval results
Files

Autod

Autod is a Node.js utility that automatically generates and manages dependencies in package.json by analyzing your JavaScript project files. It discovers required modules by parsing require/import statements and fetches their latest versions from npm registry.

Package Information

  • Package Name: autod
  • Package Type: npm
  • Language: JavaScript (Node.js)
  • Installation: npm install autod

Core Imports

const Autod = require('autod');

Basic Usage

const Autod = require('autod');

// Create an instance
const autod = new Autod({
  root: '/path/to/your/project',
  registry: 'https://registry.npmjs.org'
});

// Find and analyze dependencies
const jsFiles = autod.findJsFile();
const deps = autod.findDependencies();
const versions = await autod.findVersions();

console.log('Dependencies:', versions.dependencies);
console.log('DevDependencies:', versions.devDependencies);

Architecture

Autod consists of two primary interfaces:

  • Programmatic API: Autod class for embedding dependency analysis in Node.js applications
  • CLI Interface: Command-line tool for interactive dependency management
  • Plugin System: Extensible parsing system for custom module detection
  • Configuration: Support for persistent configuration via .autod.conf.js/.json

Capabilities

Programmatic API

Core dependency analysis functionality through the Autod class. Provides methods for discovering JavaScript files, analyzing dependencies, and fetching version information.

class Autod extends EventEmitter {
  constructor(options: AutodOptions);
  prepare(): void;
  findJsFile(): FileDiscoveryResult;
  findDependencies(): DependencyDiscoveryResult;
  findVersions(): Promise<VersionResult>;
}

interface AutodOptions {
  root: string;
  registry?: string;
  exclude?: string[];
  test?: string[];
  dep?: string[];
  devdep?: string[];
  semver?: Record<string, string>;
  plugin?: string;
  notransform?: boolean;
}

Programmatic API

Command Line Interface

Command-line tool for analyzing and managing dependencies with extensive configuration options and project integration features.

autod [options]

# Common options:
# -p, --path <path>       Root path to parse (default: '.')
# -w, --write             Write dependencies into package.json
# -t, --test <paths>      Test/benchmark/example directory paths
# -e, --exclude <paths>   Exclude directory paths
# -r, --registry <url>    Remote registry URL

Command Line Interface

Types

interface FileDiscoveryResult {
  jsFiles: string[];
  jsTestFiles: string[];
}

interface DependencyDiscoveryResult {
  dependencies: string[];
  devDependencies: string[];
}

interface VersionResult {
  dependencies: Record<string, string>;
  devDependencies: Record<string, string>;
}
Workspace
tessl
Visibility
Public
Created
Last updated
Describes
npmpkg:npm/autod@3.1.x
Publish Source
CLI
Badge
tessl/npm-autod badge