MCPcopy Index your code
hub / github.com/aboutcode-org/scancode-workbench

github.com/aboutcode-org/scancode-workbench @v4.0.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v4.0.3 ↗ · + Follow
334 symbols 820 edges 150 files 4 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ScanCode Workbench

Test CI Release

ScanCode Workbench provides an advanced visual UI to help you quickly evaluate license and other notices identified by ScanCode. ScanCode detects licenses, copyrights and other interesting information in your code.

ScanCode Workbench is based on Electron and will be the primary desktop/GUI tool for using nexB’s AboutCode tools. This app works on Windows, macOS and Linux operating systems.

ScanCode Workbench

Using

scancode -clipeu <input> <output_file>
  • We have provided a set of sample scans that you can quickly review in ScanCode Workbench in order to get a sense of its functionality and the types of information captured by a scan. The samples are located at https://github.com/aboutcode-org/scancode-workbench/tree/develop/samples.
  • Import a ScanCode JSON file, and see what components are in your software! See the documentation for more information on how to use ScanCode Workbench.

Import a JSON file

Running locally

You'll need Node.js (which comes with npm) installed on your computer in order to build this app. For a list of platform specific requirements, see the Building section of the documentation. Then, from your command line:

# Clone this repository
$ git clone https://github.com/aboutcode-org/scancode-workbench.git

# Go into the repository
$ cd scancode-workbench

# Install dependencies and run the app
$ npm install

# Run the app
$ npm start

Release Instructions

You'll need python 3.x to run the build. You can build a dist directory containing executables for your platform

Note: Due to usage of native modules, a build must be done on target platform only.

$ npm run publish

You can find the executible ScanCode-Workbench-<version> inside out/ScanCode-Workbench-<version>-<os>-<arch> and distributable archive (.tar.gz or .zip) in dist/

Testing

Run tests using:

$ npm test

License

  • Apache-2.0
  • Multiple licenses (LGPL, MIT, BSD, etc.) for third-party components.

See the NOTICE file for more details.

Support

If you have a question, a suggestion or find a bug, enter an issue.

Gitter chat

For questions and chats, you can join the Gitter channel at https://matrix.to/#/#aboutcode-org_scancode-workbench:gitter.im

Extension points exported contracts — how you extend this code

WorkbenchDbConfig (Interface)
* Manages the database created from a ScanCode JSON input. * The database contains tables for both flattened and unflat
src/services/workbenchDB.ts
EllipticLoaderProps (Interface)
(no doc)
src/components/EllipticLoader.tsx
DiffComponents (Interface)
(no doc)
src/utils/text.ts
DatasourceFilter (Interface)
(no doc)
src/pages/Packages/filters.ts
CachedState (Interface)
(no doc)
src/contexts/stateContext.tsx
ErrorInfo (Interface)
(no doc)
src/constants/IpcConnection.ts
TopLevelDataFormat (Interface)
(no doc)
src/services/workbenchDB.ts
NoDataFallbackProps (Interface)
(no doc)
src/components/NoDataSection.tsx

Core symbols most depended-on inside this repo

jsonDataType
called by 77
src/services/models/databaseUtils.ts
findAll
called by 39
src/services/workbenchDB.ts
getValues
called by 36
src/services/models/flatFile.ts
useWorkbenchDB
called by 21
src/contexts/dbContext.tsx
formatPieChartData
called by 17
src/utils/pie.ts
sendNavEventToRenderer
called by 12
src/mainMenu.ts
figureOutDefaultSqliteFilePath
called by 12
src/utils/paths.ts
addFromJson
called by 11
src/services/workbenchDB.ts

Shape

Function 194
Interface 100
Method 31
Enum 7
Class 2

Languages

TypeScript100%

Modules by API surface

src/services/workbenchDB.ts37 symbols
src/contexts/dbContext.tsx17 symbols
src/services/models/flatFile.ts14 symbols
src/services/importedJsonTypes.ts11 symbols
src/pages/Packages/Packages.tsx10 symbols
src/mainActions.ts10 symbols
src/contexts/stateContext.tsx9 symbols
src/pages/Home/Home.tsx8 symbols
src/utils/text.ts7 symbols
src/pages/Licenses/Licenses.tsx7 symbols
src/pages/TableView/TableView.tsx6 symbols
src/pages/TableView/CustomColumnSelector.tsx5 symbols

For agents

$ claude mcp add scancode-workbench \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact