https://github.com/erictherobot/dependency_checker
A Rust developer tool to help you check all dependencies in all your projects at once
https://github.com/erictherobot/dependency_checker
csv dependencies dependency-graph dependency-manager developer-tools dot petgraph reporting rust-lang
Last synced: about 2 months ago
JSON representation
A Rust developer tool to help you check all dependencies in all your projects at once
- Host: GitHub
- URL: https://github.com/erictherobot/dependency_checker
- Owner: erictherobot
- License: mit
- Created: 2023-07-22T15:33:37.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-07-22T16:39:05.000Z (almost 2 years ago)
- Last Synced: 2025-01-25T19:29:53.322Z (4 months ago)
- Topics: csv, dependencies, dependency-graph, dependency-manager, developer-tools, dot, petgraph, reporting, rust-lang
- Language: Rust
- Homepage: https://ericdavidsmith.com/blog/software/rust-dependency-checker
- Size: 13.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Dependency Checker
## Overview
Dependency Checker is a Rust program that traverses a specified directory, looking for JavaScript projects (those with a `package.json` file), checks their npm dependencies and outputs any outdated packages to a CSV report. Additionally, it generates a DOT file representing the dependency graph of the projects.
## Features
- Traverses specified directory to find JavaScript projects
- Checks for outdated npm dependencies
- Generates CSV report for outdated dependencies, including current and latest version numbers
- Generates a DOT file representing the dependency graph of the projects
- Skips `node_modules` directories for efficiency## Installation
**Prerequisites:**
- [Rust](https://www.rust-lang.org/tools/install) and Cargo installed
To install the tool, clone this repository and build the project:
```bash
git clone https://github.com/erictherobot/dependency_checker.git
cd dependency_checker
cargo build --release
```## Usage
After installation, you can run the tool with the directory path as an argument:
```bash
cargo run --release /path/to/directory
```After running, the tool will generate two files in the project root:
- `report.csv`: A CSV file containing the report of outdated packages, including the project paths, package names, current versions, and latest versions
- `dependency_graph.dot`: A DOT file representing the dependency graph of the projectsYou can view the DOT file using a tool such as Graphviz.
## Contributing
Contributions to this project are welcome. Please open an issue to discuss proposed changes or report bugs.
## License
This project is licensed under the [MIT License](LICENSE).