SCANOSS Code Compare is a streamlined desktop application for managing open source findings with a clean, distraction-free interface. It features vim-style navigation (j/k), side-by-side code comparison for both snippet and 100% matches, and robust decision management that persists across scans. Users can quickly filter results, mark components as included/omitted/replaced with single keystrokes, and access their previous decisions in future scans.
- π Advanced code scanning and component identification
- π Detailed dependency analysis and visualization
- π License compliance checking and management
- π Real-time scanning results
- β‘ Fast and efficient local processing
- π― Accurate component matching
- π₯οΈ Cross-platform support
- Go 1.x or higher
- Node.js and npm
- Wails CLI (
go install github.com/wailsapp/wails/v2/cmd/wails@latest)
Install SCANOSS Code Compare with a single command:
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/scanoss/scanoss.cc/main/scripts/install.sh | bashWindows (PowerShell as Administrator):
irm https://raw.githubusercontent.com/scanoss/scanoss.cc/main/scripts/install-windows.ps1 | iexDownload and inspect the script before running:
curl -fsSL https://raw.githubusercontent.com/scanoss/scanoss.cc/main/scripts/install.sh -o install.sh
cat install.sh # Review the script
bash install.shmacOS
brew install scanoss/dist/scanoss-code-compare- Download
scanoss-cc-mac.zipfrom the releases page - Extract and open the DMG
- Drag the app to Applications
See INSTALLATION.md for detailed instructions.
Windows
- Download
scanoss-cc-win.zipfrom the releases page - Extract the ZIP file
- Run
scanoss-cc.exe
See INSTALLATION.md for PATH setup and installation to Program Files.
Linux
Choose the appropriate binary for your system from the releases page:
- Ubuntu 22.04 and older / Debian 12 and older: scanoss-cc-linux-amd64.zip
- Ubuntu 24.04+ / Debian 13+: scanoss-cc-linux-amd64-webkit41.zip
Extract and run:
# For Ubuntu 22.04 and older
unzip scanoss-cc-linux-amd64.zip
sudo mv scanoss-cc-linux-amd64 /usr/local/bin/scanoss-cc
# For Ubuntu 24.04+ (webkit 4.1)
unzip scanoss-cc-linux-amd64-webkit41.zip
sudo mv scanoss-cc-linux-amd64-webkit41 /usr/local/bin/scanoss-ccSee INSTALLATION.md for detailed instructions.
After installation, verify that the CLI is available:
scanoss-cc --versionFor complete uninstall instructions for all platforms, see INSTALLATION.md.
| Parameter | Description | Default Value |
|---|---|---|
| scan-root | Scanned folder | $WORKDIR |
| input | Path to results.json file of the scanned project | $WORKDIR/.scanoss/results.json |
| config | Path to configuration file | $HOME/.scanoss/scanoss-cc-settings.json |
| apiUrl | SCANOSS API URL | https://api.osskb.org |
| key | SCANOSS API Key token (not required for default OSSKB URL) | - |
| debug | Enable debug mode | false |
# Open the GUI application
scanoss-cc
# Open the GUI application with custom parameters (you can also change these from the GUI)
scanoss-cc --scan-root /path/to/scanned/project --input /path/to/results.json
# Basic scan with default settings
scanoss-cc scan /path/to/project
# Scan with custom results path
scanoss-cc scan --input /path/to/results.json
# Scan current directory with multiple parameters
scanoss-cc scan . --key $SCANOSS_API_KEY --apiurl $SCANOSS_API_URL --debugBefore setting up the development environment, ensure you have the following dependencies installed:
Prerequisites:
- Go 1.23+
- Node.js and npm
System Dependencies (Debian/Ubuntu):
For Ubuntu 22.04 and older:
sudo apt-get update
sudo apt-get install -y build-essential pkg-config libgtk-3-dev libwebkit2gtk-4.0-devFor Ubuntu 24.04+ / Debian 13+:
sudo apt-get update
sudo apt-get install -y build-essential pkg-config libgtk-3-dev libwebkit2gtk-4.1-devInstall Wails CLI:
go install github.com/wailsapp/wails/v2/cmd/wails@latest- Clone the repository:
git clone https://github.com/scanoss/scanoss.cc.git
cd scanoss.cc- Run in development mode:
make runThis project uses pre-commit hooks to ensure code quality and consistency. To set up pre-commit, run:
pip3 install pre-commit
pre-commit installThis will install the pre-commit tool and set up the git hooks defined in the .pre-commit-config.yaml file to run automatically on each commit.
# Using make command
make run APPARGS="--scan-root <scanRootPath> --input <resultPath>"
# Using wails command
wails dev -appargs "--input <resultPath>"# Build for the current platform
make buildSCANOSS Code Compare provides two Linux build variants to support different WebKit versions:
- Use
make buildfor Ubuntu 22.04 and older (WebKit 4.0) - Use
make build_webkit41for Ubuntu 24.04+/Debian 13+ (WebKit 4.1)
We welcome contributions! Please read our Contributing Guidelines and Code of Conduct before submitting pull requests.
When submitting bug reports, please include:
- SCANOSS Code Compare version
- Your system information (OS, Go version, etc.)
- Steps to reproduce the issue
- Expected vs actual behavior
This project is licensed under the MIT License - see the LICENSE file for details.
For support, please:
- Check our documentation
- Open an issue in this repository