Installations
npm install @equal-games/game-scanner
Developer Guide
Typescript
No
Module System
CommonJS
Min. Node Version
>=12
Node Version
12.22.11
NPM Version
6.14.16
Score
68.4
Supply Chain
99.2
Quality
75.9
Maintenance
100
Vulnerability
100
License
Releases
Contributors
Unable to fetch Contributors
Languages
Rust (94.48%)
JavaScript (5.52%)
Developer
EqualGames
Download Statistics
Total Downloads
2,729
Last Day
11
Last Week
12
Last Month
18
Last Year
265
GitHub Statistics
21 Stars
135 Commits
5 Forks
3 Watching
8 Branches
2 Contributors
Package Meta Information
Latest Version
1.1.4
Package Id
@equal-games/game-scanner@1.1.4
Unpacked Size
21.85 MB
Size
8.17 MB
File Count
11
NPM Version
6.14.16
Node Version
12.22.11
Total Downloads
Cumulative downloads
Total Downloads
2,729
Last day
0%
11
Compared to previous day
Last week
200%
12
Compared to previous week
Last month
-10%
18
Compared to previous month
Last year
-46%
265
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
No dependencies detected.
Game Scanner
Game Scanner for any launcher and OS.
Data structure
You can find the Rust data structure in prelude.rs, and the Javascript data structure in index.d.ts.
Launchers Support
OS
Launcher | Multi-directories¹ | Windows | Linux | MacOS |
---|---|---|---|---|
Amazon | ✅ | ✅ | ❌ | ❌ |
Blizzard | ❓ | ✅ | ❌ | ❌ |
Epic Games | ❌ | ✅ | ❌ | ✅ |
GOG | ❌ | ✅ | ❌ | ✅ |
Origin | ❌ | ✅ | ❌ | ✅ |
Riot Games | ❓ | ✅ | ❌ | ✅ |
Steam | ✅ | ✅ | ❌ | ✅ |
Ubisoft | ❌ | ✅ | ❌ | ❌ |
[1]: Multi-directories: is different game install locations (e.g., folders, and drivers).
Game Commands support
Launcher | Install | Launch | Uninstall |
---|---|---|---|
Amazon | ❌ | ✅ | ❌ |
Blizzard | ❌ | ✅ | ❌ |
Epic Games | ❌ | ✅ | ❌ |
GOG | ❌ | ✅ | ❌ |
Origin | ✅ | ✅ | ❌ |
Riot Games | ❌ | ✅ | ✅ |
Steam | ✅ | ✅ | ✅ |
Ubisoft | ✅ | ✅ | ✅ |
Game State support
Launcher | Installed | Needs Update | Downloading | Total Bytes | Received Bytes |
---|---|---|---|---|---|
Amazon | ❌ | ❌ | ❌ | ❌ | ❌ |
Blizzard | ❌ | ❌ | ❌ | ❌ | ❌ |
Epic Games | ❌ | ❌ | ❌ | ❌ | ❌ |
GOG | ❌ | ❌ | ❌ | ❌ | ❌ |
Origin | ❌ | ❌ | ❌ | ❌ | ❌ |
Riot Games | ❌ | ❌ | ❌ | ❌ | ❌ |
Steam | ✅ | ✅ | ✅ | ✅ | ✅ |
Ubisoft | ❌ | ❌ | ❌ | ❌ | ❌ |
Operations
Launcher | List Games | Find Game¹ | Get launcher executable |
---|---|---|---|
Amazon | ✅ | ✅ | ✅ |
Blizzard | ✅ | ✅ | ✅ |
Epic Games | ✅ | ✅ | ✅ |
GOG | ✅ | ✅ | ✅ |
Origin | ✅ | ✅ | ✅ |
Riot Games | ✅ | ✅ | ✅ |
Steam | ✅ | ✅ | ✅ |
Ubisoft | ✅ | ✅ | ✅ |
[1]: Find Game: you can find for a specific game passing only the id
.
Management
Launcher | Launch | Get Processes | Close |
---|---|---|---|
Amazon | ✅ | ❓ | ❓ |
Blizzard | ✅ | ❓ | ❓ |
Epic Games | ✅ | ❓ | ❓ |
GOG | ✅ | ❓ | ❓ |
Origin | ✅ | ❓ | ❓ |
Riot Games | ✅ | ❓ | ❓ |
Steam | ✅ | ✅ | ✅ |
Ubisoft | ✅ | ❓ | ❓ |
[1]: Game Processes: return a list with all Id
or PID
of processes from a specific
game.
Requirements
- Rust
- cargo >= v1.49.0
- rustup >= v1.23.1
- rustc >= v1.49.0
NodeJS Binding
Usage
List games
1const game_scanner = require("@equal-games/game-scanner"); 2 3const games = game_scanner.steam.games(); 4 5// [{ 6// _type: 'steam', 7// id: '945360', 8// name: 'Among Us', 9// path: 'C:\\Program Files (x86)\\Steam\\steamapps\\common\\Among Us', 10// commands: { install: [Array], launch: [Array], uninstall: [Array] }, 11// state: { 12// installed: true, 13// needs_update: true, 14// downloading: true, 15// total_bytes: 39626416, 16// received_bytes: 0 17// } 18// }] 19
Find game
1const game_scanner = require("@equal-games/game-scanner"); 2 3const games = game_scanner.steam.find('945360'); 4 5// { 6// _type: 'steam', 7// id: '945360', 8// name: 'Among Us', 9// path: 'C:\\Program Files (x86)\\Steam\\steamapps\\common\\Among Us', 10// commands: { install: [Array], launch: [Array], uninstall: [Array] }, 11// state: { 12// installed: true, 13// needs_update: true, 14// downloading: true, 15// total_bytes: 39626416, 16// received_bytes: 0 17// } 18// } 19
Install/Uninstall game
1const game_scanner = require("@equal-games/game-scanner"); 2 3const game = game_scanner.steam.games().find(game => !game.state.installed); 4 5game_scanner.mananger.install_game(game); 6 7game_scanner.mananger.uninstall_game(game); 8
Launch/Close game
1const game_scanner = require("@equal-games/game-scanner"); 2 3const game = game_scanner.steam.games().find(game => game.state.installed); 4 5game_scanner.mananger.launch_game(game); 6// After 30 seconds 7game_scanner.mananger.close_game(game); 8
Requirements
- Visual Studio >= 2019
- Desktop Development with C++
- MSVC >= v142
- Windows 10 SDK >= 10.0.18362.0
- Desktop Development with C++
- Node
- node >= 12.20.0
- npm >= 6.14.8
- windows-build-tools >= 5.2.2
npm config set msvs_version 2019
npm config set python python2.7
Resources
Code of Conduct
If you are interested in contributing to the project, please take a look at the Code of Conduct.
License
This project is licensed under the terms of the MIT license.
No vulnerabilities found.
Reason
no dangerous workflow patterns detected
Reason
no binaries found in the repo
Reason
license file detected
Details
- Info: project has a license file: LICENSE:0
- Info: FSF or OSI recognized license: MIT License: LICENSE:0
Reason
dependency not pinned by hash detected -- score normalized to 1
Details
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:88: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:101: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:103: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:107: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:118: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:128: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:136: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:142: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:148: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:154: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:160: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:166: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/release.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:62: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:68: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:102: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:104: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:109: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:120: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:128: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:134: update your workflow using https://app.stepsecurity.io/secureworkflow/EqualGames/game-scanner/test.yml/main?enable=pin
- Info: 0 out of 18 GitHub-owned GitHubAction dependencies pinned
- Info: 0 out of 10 third-party GitHubAction dependencies pinned
- Info: 2 out of 2 npmCommand dependencies pinned
Reason
Found 0/10 approved changesets -- score normalized to 0
Reason
0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Reason
detected GitHub workflow tokens with excessive permissions
Details
- Warn: no topLevel permission defined: .github/workflows/release.yml:1
- Warn: no topLevel permission defined: .github/workflows/test.yml:1
- Info: no jobLevel write permissions found
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
- Warn: no security policy file detected
- Warn: no security file to analyze
- Warn: no security file to analyze
- Warn: no security file to analyze
Reason
project is not fuzzed
Details
- Warn: no fuzzer integrations found
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
- Warn: 0 commits out of 23 are checked with a SAST tool
Reason
11 existing vulnerabilities detected
Details
- Warn: Project is vulnerable to: RUSTSEC-2021-0145 / GHSA-g98v-hv3f-hcfr
- Warn: Project is vulnerable to: RUSTSEC-2024-0375
- Warn: Project is vulnerable to: RUSTSEC-2022-0078 / GHSA-f85w-wvc7-crwc
- Warn: Project is vulnerable to: RUSTSEC-2020-0159
- Warn: Project is vulnerable to: RUSTSEC-2024-0421 / GHSA-h97m-ww89-6jmq
- Warn: Project is vulnerable to: RUSTSEC-2024-0384
- Warn: Project is vulnerable to: RUSTSEC-2022-0090 / GHSA-jw36-hf63-69r9
- Warn: Project is vulnerable to: RUSTSEC-2023-0018 / GHSA-mc8h-8q98-g5hr
- Warn: Project is vulnerable to: RUSTSEC-2021-0127
- Warn: Project is vulnerable to: RUSTSEC-2020-0071 / GHSA-wcg3-cvx6-7396
- Warn: Project is vulnerable to: RUSTSEC-2024-0320
Score
2.8
/10
Last Scanned on 2024-12-23
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More