Version 0.18.0 is an early emulator core, while the GUI lives elsewhere
shadPS4 v0.18.0 is the C++ core that translates PlayStation 4 software for Windows, Linux, and macOS hosts. The README says plainly that development is early and a flawless experience should not be expected. It names several games that run, but those examples are no promise about a different title, region, update, or host. The practical buying guide is the separate compatibility repository. People who just want to play are sent to QtLauncher, a different repository that packages the core behind a graphical library interface.
The scale is unusual even before compilation. Our checkout at commit e29cf71 contained 42,295 files, about 11,106,431 lines of source, and occupied 971.3 MB. Much of that tree is external code, which is normal for an emulator that carries many low-level dependencies, but it changes the contributor experience. Clone recursively, expect long indexing, and keep build output off a cramped system drive. The GPL-2.0 license also matters if you plan to distribute a modified build rather than run one privately.
The official tracker has 2,032 open game reports
The compatibility repository listed 2,032 open reports on September 2, 2026. That volume is useful because a PlayStation 4 title can behave differently by CUSA identifier, game update, driver, and emulator revision. It also means a green result for one title cannot stand in for the catalog. The debugging guide asks reporters to name the exact CUSA code, attach logs, and distinguish a game crash from a reproducible emulator defect. Check that tracker before spending time dumping and configuring a game.
Issue 4304 is an open aggregate of known regressions, while the main repository had 217 combined issues and pull requests. Its list includes games that crash on boot, hang during play, render incorrectly, or can crash a GPU driver. Those reports are more useful than a general argument about whether shadPS4 "works." Use the exact release and hardware named in a report, test without mods, and retain the previous working emulator build when an update changes behavior. Early emulation rewards careful version control on the user's side.
What happened when we ran it
Our sandbox installed 151 npm packages in 95 seconds and used 425 MB, but that operation ran inside externals/CLI11/book/. The directory belongs to a nested Node documentation project rather than the C++ emulator build described by shadPS4. No build script or target existed there, so the harness skipped build. No test script or target existed there either, so it skipped tests. Our test method therefore produced no evidence that the emulator compiled, launched, or ran a game.
The npm audit reported 49 known vulnerabilities: 9 critical, 26 high, 12 moderate, and 2 low. Those findings belong to the 151-package nested tooling tree. They should not be presented as flaws in the emulator binary without tracing whether any affected package ships or runs there. Contributors who execute that documentation toolchain still have to account for them. The repository scan found one CI workflow and a tests directory, but our selected Node target did not invoke either the C++ build or those tests.
A real source build starts with CMake and recursive submodules
The Linux guide recommends Clang 18 and tells developers to clone with recursive submodules. Debian and Ubuntu need Vulkan development files plus audio, input, SSL, PNG, and other system packages before CMake configuration. Windows has Visual Studio 2022 and VS Code routes; the documented MSYS2 route is currently broken. These are platform-native C++ builds, unrelated to the 95-second npm install in our lab. A contributor should follow the relevant operating-system guide and treat our harness result as a map of an accidental nested target.
macOS has the narrowest gate: the README requires macOS 26.0 or newer and excludes Intel Macs. Linux offers a Docker build guide, though our repository scan found no Dockerfile, so read that guide's expected layout before assuming a root-level image build. The core also expects Vulkan-capable graphics, while debugging can involve RenderDoc, shader dumps, stack traces, and per-game logs. This is reasonable machinery for emulator development and far more work than installing a normal desktop application.
Legal firmware dumps are part of the 0.18.0 setup
shadPS4 can load a documented set of PlayStation 4 firmware modules, and the README says they must come from a legally owned console. Games likewise need local folders or ELF files; the project does not supply commercial content. Controllers have default mappings, while keyboard and mouse bindings can be customized per game. Command-line users point the core at a game ID or executable. Most players will prefer the QtLauncher because the core repository intentionally does not include its GUI.
Release 0.18.0 added fixes for shadNet authorization, kernel event flags, video playback through dumped modules, and several GPU cases. GitHub recorded 32,719 stars, a September 1, 2026 push, and 217 combined issues and pull requests. Recent pull requests touch shader translation, video decoding, handheld motion controls, and network behavior. That is active engineering rather than a finished compatibility promise. The release cadence and issue traffic justify testing, while the project's own early-status warning should control expectations.
The 49 audit findings do not answer whether your game runs
Our 49 npm findings are a maintenance concern for one nested tool, while game compatibility lives in the C++ core, firmware dump, driver, and exact title revision. Keep those questions separate. For an end user, the sensible path is QtLauncher, the official compatibility report for the title, a legally dumped setup, and a rollback copy of any version that works. For a developer, shadPS4 is active and unusually instructive, but the lab result on this page is intentionally no substitute for a full CMake build and game test.

