### Install Dependencies Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Run this command in the repository root to install all project dependencies. ```bash yarn install ``` -------------------------------- ### Install OpossumUI Snap Package on Linux Source: https://github.com/opossum-tool/opossumui/blob/main/README.md Install the OpossumUI snap package locally on Linux using this command. After installation, OpossumUI can be launched from the start menu or by running 'opossum-ui' in the terminal. ```shell snap install ./OpossumUI-for-linux.snap --dangerous ``` -------------------------------- ### Start OpossumUI Development Server Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Execute this command to start the app in development mode, with hot-reloading for frontend changes. ```bash yarn start ``` -------------------------------- ### Conventional Commit Example Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md An example of a conventional commit message, demonstrating the structure and content. ```txt fix: minor typos in code see the issue for details on the typos fixed fixes issue #12 ``` -------------------------------- ### Create Auto Build for Release Testing Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Use this command to create an automatic build for testing purposes during the release process. The output can be found in the \_/release\_ folder. ```bash yarn ship:auto ``` -------------------------------- ### Build OpossumUI for All OS Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Execute this command to build the OpossumUI application for all three major operating systems (Linux, macOS, Windows). The built releases will be found in the \_/release\_ folder. ```bash yarn ship ``` -------------------------------- ### Run Unit Tests Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Execute unit tests using Jest and React Testing Library with this command. ```bash yarn test:unit ``` -------------------------------- ### Configure Base URLs for Sources in Opossum Input Source: https://github.com/opossum-tool/opossumui/blob/main/docs/FileFormats.md Defines a mapping from paths to base URLs for fetching source files. The base URL should include a {path} placeholder. ```json "baseUrlsForSources": { "/": "https://github.com/opossum-tool/opossumUI/blob/main/{path}" } ``` -------------------------------- ### Run End-to-End Tests Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Run the end-to-end tests against the development server. ```bash yarn test:e2e ``` -------------------------------- ### Build OpossumUI for Specific OS Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Run these yarn commands to build the OpossumUI application for a single operating system. The built releases will be located in the \_/release\_ folder. ```bash yarn ship-linux ``` ```bash yarn ship-mac ``` ```bash yarn ship-win ``` -------------------------------- ### Rebuild Electron Native Modules Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md If you encounter ABI mismatch errors with `better-sqlite3`, run this command to rebuild the Electron-specific module. ```bash yarn rebuild:electron ``` -------------------------------- ### Clone OpossumUI Repository Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Use this command to clone the OpossumUI repository to your local machine. ```bash git clone git@github.com:opossum-tool/OpossumUI.git ``` -------------------------------- ### Run End-to-End Tests in CI Mode Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Execute end-to-end tests against a built version of the app, similar to the CI/CD pipeline. ```bash yarn test:e2e:ci ``` -------------------------------- ### Run OpossumUI AppImage on Linux with Sandbox Disabled Source: https://github.com/opossum-tool/opossumui/blob/main/README.md Use this command to run the OpossumUI AppImage on Linux if you encounter sandboxing issues, particularly on Ubuntu 22.04+. ```shell ./OpossumUI-for-linux.AppImage --no-sandbox ``` -------------------------------- ### Conventional Commit Message Format Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Follow this format for commit messages to ensure consistency and clarity. It includes a type, optional scope, description, and optional body/footer. ```txt [optional scope]: [optional body] [optional footer] ``` -------------------------------- ### Define External Attribution Sources in Opossum Input Source: https://github.com/opossum-tool/opossumui/blob/main/docs/FileFormats.md Maps short names for attribution sources to their full names and priorities. Higher priority numbers indicate greater importance. ```json "externalAttributionSources": { "SC": { "name": "ScanCode", "priority": 1 } } ``` -------------------------------- ### Conventional Commit Types Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md A list of valid types for conventional commit messages. Use these to categorize your changes. ```txt [ 'build', 'chore', 'ci', 'docs', 'feat', 'fix', 'perf', 'refactor', 'revert', 'style', 'test' ] ``` -------------------------------- ### Debug End-to-End Test with 'debug' Fixture Source: https://github.com/opossum-tool/opossumui/blob/main/CONTRIBUTING.md Use the `debug()` fixture within an end-to-end test to halt execution at a specific point. This allows for inspection of the generated .opossum file in OpossumUI before the test continues. ```javascript test('updates progress bar and confidence when user confirms preselected attributions in audit view', async ({ attributionDetails, resourceBrowser, resourceDetails, topBar, debug, }) => { await resourceBrowser.goto(resourceName1); await attributionDetails.assert.matchPackageInfo(packageInfo1); await topBar.assert.progressBarTooltipShowsValues({ numberOfFiles: 4, filesWithOnlyPreSelectedAttributions: 4, }); debug(); // the test will exit here await attributionDetails.assert.confirmButtonIsVisible(); await attributionDetails.assert.confirmGloballyButtonIsVisible(); }); ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.