Skip to content

ruudandriessen/roest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Roest 📦

A lightweight CLI tool to analyze package freshness in your Node.js or Web projects. Roest - meaning "Rust" in Dutch - helps you identify outdated packages by checking when they were last updated, making it easier to keep your dependencies current and secure.

Usage

Basic Usage

Navigate to your project directory and run:

npx roest check

This will analyze your package-lock.json file and display package update information.

Analyze GitHub Repository

You can also analyze any GitHub repository directly. In order to do this, you need to make sure you have the GITHUB_TOKEN environment variable set. You can create a new GitHub token here.

Once you have your token, run the following command:

npx roest repo owner/repository

This will find and analyze all lock files in the specified GitHub repository.

Generate HTML Report

After running an analysis, you can generate a visual HTML report:

npx roest show

This will read the output.json file and generate a report.html file with a visual representation of your package freshness data.

You can also specify custom input and output paths:

npx roest show ./custom-output.json -o ./custom-report.html

Command Options

check command

  • -f, --file <path>: Path to your lock file (default: auto-detect in current directory)
  • -o, --output <path>: Output file path for JSON results (default: ./output.json)

repo command

  • -o, --output <path>: Output file path for JSON results (default: ./output.json)

show command

  • [input]: Input JSON file path (default: ./output.json)
  • -o, --output <path>: Output HTML file path (default: ./report.html)

Output Format

JSON Output

The tool also generates a detailed JSON file containing:

[
  {
    "name": "chalk",
    "current": {
      "version": "5.6.2",
      "publishDate": "2024-01-15T10:30:00.000Z"
    },
    "next": {
      "version": "5.6.3",
      "publishDate": "2024-03-01T14:20:00.000Z"
    }
  }
]

Supported Lock File Formats

  • npm package-lock.json v2: Full support
  • npm package-lock.json v3: Full support
  • pnpm: Planned
  • bun: Full support
  • yarn: Planned

Development

Prerequisites

Make sure you have Bun installed on your system.

Install Dependencies

bun install

License

MIT License - see LICENSE file for details.

About

📦 Roest: makes sure you polish away all the rust from your codebase

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •