- C# 99.4%
- Shell 0.6%
- Update version from 4.0.0-alpha to 4.0.0 (Production Ready) - Add Phases 11-18 to Implementation Status table (all COMPLETE) - Update test count from 118/80 to 138 (all passing) - Add release info with correct git.diath.systems URL - Document full feature parity with Phase 18 completion |
||
|---|---|---|
| .vscode | ||
| UWUVCI.App.Uno | ||
| UWUVCI.Config | ||
| UWUVCI.Core | ||
| UWUVCI.ImagePipeline | ||
| UWUVCI.Services | ||
| UWUVCI.Tests | ||
| UWUVCI.Tooling | ||
| .gitattributes | ||
| .gitignore | ||
| CLEANUP.md | ||
| global.json | ||
| LICENSE | ||
| PHASE_14_AUDIT.md | ||
| README.md | ||
| REWRITE_PLAN.md | ||
| STATUS.md | ||
| UWUVCI.slnx | ||
UWUVCI-AIO-WPF (Fork of Fork) – V4.0.0 Redesign
Disclaimer: This is not the official version of UWUVCI-AIO-WPF.
Why fork of fork? Started as a fork of ZestyTS's fork to experiment with a different architectural direction via "Vibe Coding" – exploring modern .NET 10 + cross-platform possibilities without the constraints of the legacy WPF codebase. This fork grew into a complete redesign proving the approach is viable and production-ready.
The V3 codebase on itch.io still comes from ZestyTS's fork. This V4 fork is an experimental direction that evolved into a full redesign. No official support is provided; use at your own discretion.
About V4.0.0 Release
UWUVCI-V3 was built on WPF (.NET Framework 4.8), which had significant limitations:
- ❌ Windows-only – No Linux/macOS support despite user demand
- ❌ Limited scalability – Legacy architecture made cross-platform porting impractical
- ❌ Outdated tech stack – WPF reached end-of-life for modern development
V4.0.0 redesigns the entire codebase using modern .NET 10 LTS + Uno Platform:
- ✅ Cross-platform – Windows, Linux/KDE, macOS support (WASM ready for future web version)
- ✅ Clean architecture – Testable services, minimal coupling, interface-based design
- ✅ Modern tech – Tomlyn for config, SkiaSharp for images, MSTest v3 for testing
- ✅ Production-ready – 138 tests (all green), self-contained portable builds, no external deps
This is a from-scratch redesign, not a port. The old WPF code is kept as a reference only.
Build & Run (V4.0.0)
Prerequisites
- .NET 10 SDK (https://dotnet.microsoft.com/download)
- Linux users:
libc6-dev,libx11-dev(Uno Platform desktop requirements)
Build
cd UWUVCI-AIO-WPF
dotnet build
Run
# Windows
dotnet run --project UWUVCI.App.Uno/UWUVCI.App.Uno/UWUVCI.App.Uno.csproj
# Linux
dotnet run --project UWUVCI.App.Uno/UWUVCI.App.Uno/UWUVCI.App.Uno.csproj
Test (138 tests)
dotnet test
Publish (Self-Contained)
# Windows (win-x64)
dotnet publish UWUVCI.App.Uno/UWUVCI.App.Uno/UWUVCI.App.Uno.csproj \
-c Release -r win-x64 -f net10.0-desktop -o dist/windows
# Linux (linux-x64)
dotnet publish UWUVCI.App.Uno/UWUVCI.App.Uno/UWUVCI.App.Uno.csproj \
-c Release -r linux-x64 -f net10.0-desktop -o dist/linux
Wii U All-in-One Injector
A tool for injecting various systems into the Wii U.
Supported systems: DS · GBA · N64 · SNES · NES · TurboGrafx · MSX · Wii · GCN
Repository Layout
UWUVCI.Core/ Domain models, pipeline abstractions, runtime paths
UWUVCI.Config/ TOML-based settings (Tomlyn)
UWUVCI.Tooling/ Tool discovery and execution (Wine-aware)
UWUVCI.ImagePipeline/ Image load/save/resize including custom TGA reader/writer
UWUVCI.App.Uno/ Uno Platform desktop app (Windows + Linux/KDE)
UWUVCI.Tests/ MSTest v3 unit tests (138 tests)
artifacts/ Generated by publish script; not committed
Building
Requires .NET 10 SDK (dotnet --version should report 10.x).
Restore + build
dotnet build UWUVCI.slnx
Run tests
dotnet test UWUVCI.slnx
Run app (dev, Linux/Windows)
dotnet run --project UWUVCI.App.Uno/UWUVCI.App.Uno.csproj -f net10.0-desktop
Portable release build
cd UWUVCI.App.Uno
bash publish.sh linux # → artifacts/dist/uwuvci-linux-x64.tar.gz
bash publish.sh win # → artifacts/dist/uwuvci-win-x64.zip (cross-compile)
bash publish.sh linux win # both targets
The published build is self-contained (.NET runtime bundled) and does not require installation of .NET on the target machine.
Data Paths
The application never writes into the install directory.
| Platform | Settings & data |
|---|---|
| Linux | ~/.local/share/UWUVCI-V3/ (respects $XDG_DATA_HOME) |
| Windows | %LOCALAPPDATA%\UWUVCI-V3\ |
| macOS | ~/Library/Application Support/UWUVCI-V3/ |
Settings file: settings.toml in the above directory.
Implementation Status
See REWRITE_PLAN.md for the full phase-by-phase breakdown.
Current version: 4.0.0 (✅ ALL PHASES COMPLETE – Production Ready)
| Phase | Status | Notes |
|---|---|---|
| 0 – Environment | ✅ | .NET 10 SDK, build tools, baseline |
| 1 – Source inventory | ✅ | Legacy analysis, cross-platform requirements |
| 2 – Scaffold (6 projects) | ✅ | UWUVCI.Core, Config, Tooling, ImagePipeline, App.Uno, Tests |
| 3 – TOML Config layer | ✅ | Settings, tool manifest, safe CKey handling |
| 4 – Tooling foundation | ✅ | ProcessToolRunner, ManifestToolResolver, Wine detection |
| 5 – Image pipeline | ✅ | Custom TGA (typ 2 + typ 10), SkiaSharp integration |
| 6 – Core injection models | ✅ | GameConsole, GameConfig, InjectionContext, IInjectStep |
| 7 – Uno UX shell | ✅ | Themes (Dark/Light), ShellPage, InjectPage, SettingsPage |
| 8 – Packaging | ✅ | Linux tar.gz, Windows ZIP, portable self-contained builds |
| 9 – WASM readiness audit | ✅ | Blocker matrix documented, abstractions in place |
| 10 – Final cleanup | ✅ | Repository reorganization, documentation, namespace cleanup |
| 11 – Injection services | ✅ | 8 consoles (GBA, N64, NES, SNES, TG16, MSX, NDS, GCN, Wii) |
| 12 – InjectOrchestrator + UI | ✅ | Per-console options, cross-platform picker, orchestration |
| 13 – ToolsPage + downloader | ✅ | HTTP download, SHA-256 verify, TOML manifest, progress UI |
| 14 – External tool audit | ✅ | Multi-OS strategy, Windows-only tool identification |
| 15 – Base ROM management | ✅ | Download infrastructure, local cache, verification |
| 16 – Multi-OS verification | ✅ | Windows/Linux build, platform-specific testing |
| 17 – Polish + final testing | ✅ | Themes, UI refinement, performance, stability |
| 18 – PSB.M / pce.pkg formats | ✅ | GBA Dark-Filter (PSB patching), TurboCD pce.pkg (native C#) |
Test coverage: 138 tests (all passing) – MArchive crypto, MT19937 PRNG, PSB/NKit parsers, injection workflows
Release: v4.0.0 tag on git.diath.systems/DiamantTh/UWUVCI-AIO