-
Notifications
You must be signed in to change notification settings - Fork 0
Repository
| Getting Started | Using the App | Technical Reference | Project |
|---|---|---|---|
| Home | Usage Guide | Architecture | Repository |
| Installation | Conversion Methods | XDVDFS Technical Docs | Building from Source |
| XISO Explorer | Troubleshooting & FAQ | Release Notes |
This page describes the repository itself: where things live, how releases are managed, and how to contribute.
- Repository: https://github.com/purelogiccode/XboxIsoStudio
- Issues: https://github.com/purelogiccode/XboxIsoStudio/issues
- Releases: https://github.com/purelogiccode/XboxIsoStudio/releases
- Website: https://www.purelogiccode.com
- License: GNU GPL v3.0
├── docs/ This documentation (repository wiki)
│ ├── index.md Home page
│ ├── Installation.md
│ ├── Usage-Guide.md
│ ├── Conversion-Methods.md
│ ├── XISO-Explorer.md
│ ├── Troubleshooting-and-FAQ.md
│ ├── Architecture.md
│ ├── XDVDFS-Technical-Documentation.md
│ ├── Building-from-Source.md
│ ├── Release-Notes.md Full version history
│ ├── Repository.md This page
│ └── _Sidebar.md Sidebar menu (GitHub wiki)
├── XboxIsoStudio/ Main WPF application project
│ ├── Interfaces/ Service contracts
│ ├── Models/ DTOs and enums
│ ├── Services/ All business logic
│ │ ├── XisoSharpService.cs XISO/ZAR/CSO conversion via the XISOSharp library
│ │ ├── ChdService.cs CHD conversion via the CHDSharp library
│ │ ├── XisoIntegrityService.cs Integrity validation via XISOSharp / ZArchiveSharp / CHDSharp
│ │ ├── ImageExplorerFactory.cs Explorer over ISO/CSO (XisoExplorer), ZAR (ZArchiveReader) or CHD (ChdImageExplorer)
│ │ └── ChdImageExplorer.cs Explorer over CHD via CHDSharp + XISOSharp
│ ├── MainWindow*.cs Partial classes for the main window
│ ├── 7za.exe, 7za_arm64.exe Bundled helper tools
│ └── XboxIsoStudio.csproj
├── XboxIsoStudio.Tests/ xUnit + Moq test project
├── CSharp_XboxIsoStudio.sln Solution file
├── global.json Pins the .NET SDK version
├── ReadMe.md Repository front page
├── WhatsNew.md Highlights of the latest release
├── LICENSE.txt GNU GPL v3.0
└── screenshot*.png Screenshots used by the ReadMe
- The primary branch is
master. - Releases are tagged on GitHub and published on the Releases page with ready-to-run ZIP archives.
-
Versioning:
MAJOR.MINOR.PATCH(currently 2.9.0). Releases are taggedrelease_MAJOR.MINOR.PATCH(for examplerelease_2.8.0). The application's update checker extracts the numeric version from the latest release tag, so keep theMAJOR.MINOR.PATCHpart intact.
Contributions are welcome!
- Check Troubleshooting & FAQ first — many reported issues are environmental (disk space, permissions, antivirus locks) and already handled with clear messages.
- Search existing issues to avoid duplicates.
- Open a new issue including:
- Application version (visible in the About window)
- Windows version and architecture (x64/ARM64)
- The input format used (
.iso,.cso,.zar,.chd, or archive) - The relevant lines from the in-application log
-
Fork the repository and create a feature branch from
master. -
Follow the existing code style — the build enforces Meziantou and Roslynator analyzer rules as warnings; keep the build clean.
-
Add or update tests in
XboxIsoStudio.Testsfor behavioral changes. -
Verify with:
dotnet build CSharp_XboxIsoStudio.sln dotnet test CSharp_XboxIsoStudio.sln -
Open a pull request describing the motivation and the change.
- Services live behind interfaces in
Interfaces/and are registered inApp.ConfigureServices(dependency injection — no manualnewin UI code). - UI code (partial
MainWindowclasses) contains no business logic; it orchestrates services and updates the UI. - User-facing error messages should be actionable; environmental errors (disk space, network) must not be sent as automatic bug reports.
The docs/ folder doubles as the repository wiki:
- On GitHub,
docs/_Sidebar.mdprovides the side menu when the pages are imported into the repository wiki (GitHub renders_Sidebar.mdnext to every wiki page automatically). - Every page also embeds the same navigation table at the top so the documentation is fully navigable when browsed inside the repository.
When adding features, please update the relevant documentation pages in the same pull request.
| Workflow | Trigger | Purpose |
|---|---|---|
CI (.github/workflows/ci.yml) |
Push / PR to master
|
Restores, builds in Release, runs the xUnit suite, and uploads portable win-x64 / win-arm64 publish artifacts |
Update Wiki (.github/workflows/wiki.yml) |
Push to docs/** (or manual) |
Copies the documentation into the GitHub wiki and rewrites internal links. Requires a WIKI_TOKEN repository secret (PAT with repo scope); skips with a notice when the secret is absent |
GitHub Pages is built automatically by GitHub from the master branch /docs folder and is published at https://purelogiccode.github.io/XboxIsoStudio/ — no workflow is required for it.
This project is licensed under the GNU General Public License v3.0 — see LICENSE.txt for the full text. By contributing, you agree that your contributions are licensed under the same license.
- XISOSharp — XISO/XDVDFS library powering XISO/ZAR/CSO conversion, integrity testing, and exploration
- CHDSharp — CHD reading, verification, and creation powering CHD conversion, testing, and exploration
- SharpCompress — archive extraction
XISO Studio
Using the App
Technical Reference
Project
Releases