An open API service indexing awesome lists of open source software.

https://github.com/roshan-r/lcheck

cli tool to check license compatibility across your project dependencies
https://github.com/roshan-r/lcheck

Last synced: 4 months ago
JSON representation

cli tool to check license compatibility across your project dependencies

Awesome Lists containing this project

README

          

# lcheck

**lcheck** is a cli license checker for your project dependencies. It autodetects your language, extract dependencies, identifies missing license information, and detects potential license conflicts.

## Features

- **Automatic Dependency Detection** – Scans dependencies from `Cargo.toml`, `pyproject.toml`.
- **License Verification** – Retrieves license information from public sources.
- **Conflict Detection** – Highlights incompatible licenses between dependencies.
- **Modular Architecture** – Designed with separate, well-structured modules for each language, ensuring maintainability and easy extensibility..

## Installation

To install **lcheck**, ensure you have Rust installed, then build and install it using:

```sh
git clone https://github.com/Roshan-R/lcheck.git
cd lcheck
cargo build --release
```

To use lcheck globally:

```sh
cargo install --path .
```

### Usage

Run lcheck in your project directory:

```sh
lcheck
```

#### Options

```
cli tool to check license compatibility across your project dependencies

Usage: lcheck [OPTIONS]

Options:
-v, --verbose Show verbose output
-h, --help Print help
-V, --version Print version
```

## TODO
- handle projects which are dual licensed
- add more languages: go, javascript, etc.
- store package metadata to global cache in file system to avoid calling APIs

## Credits

The osadl matrix used is from https://github.com/priv-kweihmann/osadl-matrix