<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>XOAP Package Wizard | XOAP Docs</title>
	<atom:link href="https://xoap.io/docs-category/psadt-package-wizard/feed/" rel="self" type="application/rss+xml" />
	<link>https://xoap.io/docs-category/psadt-package-wizard/</link>
	<description>Platform for IT infrastructure and workplace automation</description>
	<lastBuildDate>Tue, 28 Apr 2026 12:05:45 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://xoap.io/wp-content/uploads/2023/11/cropped-favicon-32x32.png</url>
	<title>XOAP Package Wizard | XOAP Docs</title>
	<link>https://xoap.io/docs-category/psadt-package-wizard/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Introduction</title>
		<link>https://xoap.io/docs/psadt-package-wizard-introduction/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-introduction/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:38:23 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31216</guid>

					<description><![CDATA[<p>XOAP PSADT Package Wizard is a Windows desktop application that guides you through creating&#160;PSAppDeployToolkit (PSADT)&#160;v4 deployment packages. Instead of manually editing PowerShell scripts, you use a step-by-step wizard to configure application metadata, write deployment logic, upload installer files, and export a ready-to-deploy&#160;.zip&#160;package. What you get Each exported package is a standard PSADT v4 folder containing: [&#8230;]</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-introduction/">Introduction</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>XOAP PSADT Package Wizard is a Windows desktop application that guides you through creating&nbsp;<a href="https://psappdeploytoolkit.com/">PSAppDeployToolkit (PSADT)</a>&nbsp;v4 deployment packages. Instead of manually editing PowerShell scripts, you use a step-by-step wizard to configure application metadata, write deployment logic, upload installer files, and export a ready-to-deploy&nbsp;<code>.zip</code>&nbsp;package.</p>
</blockquote>



<h2 class="wp-block-heading" style="font-size:38px">What you get</h2>



<p>Each exported package is a standard PSADT v4 folder containing:</p>



<ul class="wp-block-list">
<li><code>Invoke-AppDeployToolkit.ps1</code>&nbsp;— The main deployment script (generated by the wizard)</li>



<li><code>Invoke-AppDeployToolkit.exe</code>&nbsp;— PSADT executable stub</li>



<li><code>PSAppDeployToolkit/</code>&nbsp;— The PSADT module</li>



<li><code>Files/</code>&nbsp;— Your installer files (MSI, EXE, configuration files, etc.)</li>



<li>Supporting folders (<code>Config/</code>,&nbsp;<code>Strings/</code>,&nbsp;<code>SupportFiles/</code>,&nbsp;<code>Assets/</code>)</li>
</ul>



<p>These packages can be deployed with SCCM/MECM, Intune, or any deployment tool that runs PowerShell scripts.</p>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-introduction/">Introduction</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-introduction/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Installation &#038; first launch</title>
		<link>https://xoap.io/docs/psadt-package-wizard-installation-and-first-launch/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-installation-and-first-launch/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:40:17 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31248</guid>

					<description><![CDATA[<p>Installation System requirements Install steps Uninstall Use&#160;Windows Settings → Apps → XOAP PSADT Package Wizard → Uninstall, or run the uninstaller from the Start Menu. Your packages and settings in&#160;%AppData%\XOAP\PackageWizard\&#160;are preserved after uninstall. Delete that folder manually if you want a completely clean removal. First launch Launch&#160;XOAP PSADT Package Wizard&#160;from the Start Menu or desktop [&#8230;]</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-installation-and-first-launch/">Installation &amp; first launch</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-fe9cc265 wp-block-group-is-layout-flex" style="font-size:20px">
<h2 class="wp-block-heading" style="font-size:38px">Installation<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#installation"></a></h2>



<h3 class="wp-block-heading" style="font-size:28px">System requirements<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#system-requirements"></a></h3>



<ul class="wp-block-list">
<li>Windows 10 (version 1809+) or Windows 11</li>



<li>x64 processor</li>



<li>Internet connection (only for first-time .NET runtime download and optional PSADT download)</li>
</ul>



<h3 class="wp-block-heading" style="font-size:28px">Install steps<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#install-steps"></a></h3>



<ol class="wp-block-list">
<li>Run&nbsp;<code>PackageWizard-Setup-{version}.exe</code></li>



<li>If .NET 9 is not installed, the installer will automatically download and install the required runtimes from Microsoft (<code>Microsoft.WindowsDesktop.App</code>&nbsp;and&nbsp;<code>Microsoft.AspNetCore.App</code>). This may take a few minutes on first install.</li>



<li>Choose the installation folder (default:&nbsp;<code>C:\Program Files\XOAP PSADT Package Wizard</code>)</li>



<li>Optionally create a desktop shortcut</li>



<li>Click&nbsp;<strong>Install</strong></li>
</ol>



<h3 class="wp-block-heading" style="font-size:28px">Uninstall<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#uninstall"></a></h3>



<p>Use&nbsp;<strong>Windows Settings → Apps → XOAP PSADT Package Wizard → Uninstall</strong>, or run the uninstaller from the Start Menu.</p>



<p>Your packages and settings in&nbsp;<code>%AppData%\XOAP\PackageWizard\</code>&nbsp;are preserved after uninstall. Delete that folder manually if you want a completely clean removal.</p>



<h2 class="wp-block-heading" style="font-size:38px">First launch<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#first-launch"></a></h2>



<p>Launch&nbsp;<strong>XOAP PSADT Package Wizard</strong>&nbsp;from the Start Menu or desktop shortcut.</p>



<p>On first launch, the application:</p>



<ol class="wp-block-list">
<li>Starts a local backend server on a random free port (runs entirely on your machine)</li>



<li>Opens the wizard interface in an embedded browser window (WebView2)</li>



<li>If older data exists in&nbsp;<code>%AppData%\PackageWizard\</code>, it is migrated to&nbsp;<code>%AppData%\XOAP\PackageWizard\</code>&nbsp;automatically</li>
</ol>



<p>You will land on the&nbsp;<strong>Packages Workspace</strong>&nbsp;— your dashboard for all saved packages.</p>



<h3 class="wp-block-heading" style="font-size:28px">Recommended first-time setup<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#recommended-first-time-setup"></a></h3>



<ol class="wp-block-list">
<li>Open&nbsp;<strong>Settings</strong>&nbsp;(gear icon, bottom-left)</li>



<li>On the&nbsp;<strong>PSADT Toolkit</strong>&nbsp;tab, verify that an active toolkit is detected. Click&nbsp;<strong>Download Latest PSADT</strong>&nbsp;to fetch the newest release from GitHub if you want the latest version (this persists to&nbsp;<code>%AppData%\XOAP\PackageWizard\Toolkit\{tag}\</code>)</li>



<li>On the <strong>General</strong> tab, set your <strong>Default App Script Author</strong> (pre-fills new packages) and <strong>Default Output Folder</strong> (where exports are saved)</li>



<li>Use the <strong>Dark/Light theme toggle</strong> in the sidebar footer to pick your preferred theme</li>
</ol>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-installation-and-first-launch/">Installation &amp; first launch</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-installation-and-first-launch/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>UI overview</title>
		<link>https://xoap.io/docs/psadt-package-wizard-ui-overview/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-ui-overview/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:43:37 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31219</guid>

					<description><![CDATA[<p>The main window The main window has a&#160;left sidebar&#160;(navigation), a&#160;top header&#160;(breadcrumbs and the active wizard step bar when a package is open), and a&#160;main panel&#160;(the current view). Sidebar: Top section Entry Route Purpose Packages Workspace /dashboard List, create, import, export, tag, delete packages Installed Apps /installed-apps Browse Windows-installed apps, generate uninstall commands, snapshot/compare Logs /logs [&#8230;]</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-ui-overview/">UI overview</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<h2 class="wp-block-heading" style="font-size:38px">The main window<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#the-main-window"></a></h2>



<p>The main window has a&nbsp;<strong>left sidebar</strong>&nbsp;(navigation), a&nbsp;<strong>top header</strong>&nbsp;(breadcrumbs and the active wizard step bar when a package is open), and a&nbsp;<strong>main panel</strong>&nbsp;(the current view).</p>



<h3 class="wp-block-heading" style="font-size:28px">Sidebar: Top section<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#sidebar--top-section"></a></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Entry</th><th>Route</th><th>Purpose</th></tr></thead><tbody><tr><td><strong>Packages Workspace</strong></td><td><code>/dashboard</code></td><td>List, create, import, export, tag, delete packages</td></tr><tr><td><strong>Installed Apps</strong></td><td><code>/installed-apps</code></td><td>Browse Windows-installed apps, generate uninstall commands, snapshot/compare</td></tr><tr><td><strong>Logs</strong></td><td><code>/logs</code></td><td>View the API&#8217;s log files for the current session and past sessions</td></tr></tbody></table></figure>



<h3 class="wp-block-heading" style="font-size:28px">Sidebar: Wizard steps<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#sidebar--wizard-steps"></a></h3>



<p>Once a package is active, the sidebar shows the seven wizard steps. Steps you haven&#8217;t reached yet are enabled only if prerequisites are met; completed steps show a check mark.</p>



<ol class="wp-block-list">
<li>Files</li>



<li>Session Config</li>



<li>Parameters</li>



<li>Install Phase</li>



<li>Uninstall Phase</li>



<li>Repair Phase</li>



<li>Preview</li>
</ol>



<h3 class="wp-block-heading" style="font-size:28px">Sidebar: Bottom section<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#sidebar--bottom-section"></a></h3>



<ul class="wp-block-list">
<li><strong>Settings</strong>&nbsp;— application preferences, toolkit management, package configuration</li>



<li><strong>Tags</strong>&nbsp;— manage the color-coded tag library</li>



<li><strong>Dark/Light Mode toggle</strong>&nbsp;— persists across restarts</li>



<li><strong>About</strong>&nbsp;— version, platform info, license, xoap.io link</li>
</ul>



<h3 class="wp-block-heading" style="font-size:28px">Wizard header strip<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#wizard-header-strip"></a></h3>



<p>When a package is active, a strip below the breadcrumb shows:</p>



<ul class="wp-block-list">
<li>An &#8220;Active&#8221; badge with the package name</li>



<li><strong>Exit</strong>&nbsp;— returns to the dashboard</li>



<li><strong>Save</strong>&nbsp;— persists any unsaved in-memory changes (also auto-saves every 2 seconds)</li>
</ul>



<h3 class="wp-block-heading" style="font-size:28px">Wizard footer<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#wizard-footer"></a></h3>



<p>At the bottom of every wizard step:&nbsp;<strong>Back</strong>,&nbsp;<strong>Step N of 7</strong>, and&nbsp;<strong>Next</strong>&nbsp;/&nbsp;<strong>Finish</strong>. The&nbsp;<strong>Next</strong>&nbsp;button is disabled when the current step has validation errors; hover it to see the reason as a tooltip.</p>



<h2 class="wp-block-heading" style="font-size:38px">Packages workspace (dashboard)<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#packages-workspace-dashboard"></a></h2>



<p>The dashboard is your central workspace for managing packages.</p>



<h3 class="wp-block-heading" style="font-size:28px">Header<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#header"></a></h3>



<ul class="wp-block-list">
<li><strong>Package Usage Widget</strong>&nbsp;— Shows&nbsp;<code>{used} | {max} Packages used</code>&nbsp;with a progress bar and percentage.&nbsp;<strong>The free edition is limited to 10 packages</strong>; the widget turns red and the&nbsp;<strong>Start New Package</strong>&nbsp;button becomes disabled at the cap.</li>



<li><strong>Start New Package</strong>&nbsp;— Creates a blank package and opens the first wizard step</li>



<li><strong>Import Local</strong>&nbsp;— Opens a drawer to drop/select one or more existing PSADT&nbsp;<code>.zip</code>&nbsp;packages to import into the workspace</li>
</ul>



<h3 class="wp-block-heading" style="font-size:28px">Toolbar<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#toolbar"></a></h3>



<ul class="wp-block-list">
<li><strong>Tag filter</strong>&nbsp;(left) — Filter packages by assigned tag (or &#8220;All tags&#8221;)</li>



<li><strong>Search</strong>&nbsp;— Filter by package name</li>



<li><strong>Select All Packages</strong>&nbsp;— Batch checkbox</li>



<li><strong>Assign Tags</strong>&nbsp;— Opens a drawer to assign/remove tags on the selected packages</li>



<li><strong>Export</strong>&nbsp;(download icon) — Exports every selected package; in the desktop app each zip is written to the Default Output Folder (or Downloads fallback). In a browser the zips download one-by-one</li>



<li><strong>Delete</strong>&nbsp;(trash icon) — Deletes selected packages (with a confirmation prompt)</li>
</ul>



<h3 class="wp-block-heading" style="font-size:28px">Package card<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#package-card"></a></h3>



<p>Each package card shows:</p>



<ul class="wp-block-list">
<li>Package name (auto-set from&nbsp;<code>AppName</code>&nbsp;once filled in)</li>



<li>Application metadata (vendor, name, version, architecture)</li>



<li>Assigned tags (color-coded badges;&nbsp;<strong>limit 5 tags per package</strong>)</li>



<li>Creation date</li>



<li>Per-card actions:&nbsp;<strong>Open</strong>&nbsp;(enter wizard),&nbsp;<strong>Export</strong>,&nbsp;<strong>Edit Tags</strong>,&nbsp;<strong>Delete</strong></li>
</ul>



<h3 class="wp-block-heading" style="font-size:28px">Multi-select<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#multi-select"></a></h3>



<p>Click the card checkbox (or Select All) to queue packages for batch export / delete / tag assignment.</p>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-ui-overview/">UI overview</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-ui-overview/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Creating a package</title>
		<link>https://xoap.io/docs/psadt-package-wizard-creating-a-package/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-creating-a-package/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:45:52 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31221</guid>

					<description><![CDATA[<p>Click&#160;Start New Package&#160;on the dashboard. The wizard guides you through seven steps. You can navigate freely between steps using the sidebar or the Previous/Next footer buttons. Every change is auto-saved to the active package roughly every 2 seconds, or immediately when you click&#160;Save&#160;in the header strip. Step 1: Files manager Upload the installer files that [&#8230;]</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-creating-a-package/">Creating a package</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>Click&nbsp;<strong>Start New Package</strong>&nbsp;on the dashboard. The wizard guides you through seven steps. You can navigate freely between steps using the sidebar or the Previous/Next footer buttons. Every change is auto-saved to the active package roughly every 2 seconds, or immediately when you click&nbsp;<strong>Save</strong>&nbsp;in the header strip.</p>
</blockquote>



<h2 class="wp-block-heading" style="font-size:38px">Step 1: Files manager<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#step-1--files-manager"></a></h2>



<p>Upload the installer files that your deployment script will reference.</p>



<p><strong>How to upload:</strong></p>



<ul class="wp-block-list">
<li><strong>Drag and drop</strong>&nbsp;files or folders onto the upload area, or</li>



<li><strong>Click</strong>&nbsp;the upload area to open the file browser</li>
</ul>



<p><strong>Features:</strong></p>



<ul class="wp-block-list">
<li>Folder structure is preserved (useful for complex installers)</li>



<li>Maximum upload size: 5 GB per request</li>



<li><strong>Automatic metadata detection:</strong>&nbsp;When you upload an MSI or EXE, the wizard reads its embedded ProductName, ProductVersion, and architecture and offers to pre-fill Session Configuration</li>
</ul>



<p><strong>File Tree:</strong></p>



<ul class="wp-block-list">
<li>View all uploaded files in a tree structure</li>



<li>Delete individual files or folders</li>



<li>Clear all files for the active package</li>
</ul>



<p>Uploaded files are stored per-package in&nbsp;<code>%AppData%\XOAP\PackageWizard\workspace\Files\{packageId}\</code>&nbsp;and are bundled into&nbsp;<code>Files/</code>&nbsp;inside the exported zip.</p>



<h2 class="wp-block-heading" style="font-size:38px">Step 2: Session configuration<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#step-2--session-configuration"></a></h2>



<p>Configure the application metadata that PSADT uses for logging, UI display, and detection. Every field here is written into the&nbsp;<code>$adtSession = @{ ... }</code>&nbsp;block of the generated script.</p>



<h3 class="wp-block-heading" style="font-size:28px">Application information</h3>



<p><a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#application-information"></a></p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th><th>Example</th></tr></thead><tbody><tr><td><strong>App Vendor</strong></td><td>Software publisher</td><td><code>Microsoft</code></td></tr><tr><td><strong>App Name</strong></td><td>Application name</td><td><code>Visual Studio Code</code></td></tr><tr><td><strong>App Version</strong></td><td>Version string</td><td><code>1.85.0</code></td></tr><tr><td><strong>App Architecture</strong></td><td>Target architecture</td><td><code>x64</code></td></tr><tr><td><strong>App Language</strong></td><td>Language code</td><td><code>EN</code></td></tr><tr><td><strong>App Revision</strong></td><td>Package revision number</td><td><code>01</code></td></tr></tbody></table></figure>



<h3 class="wp-block-heading" style="font-size:28px">Script metadata</h3>



<p><a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#script-metadata"></a></p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th><th>Example</th></tr></thead><tbody><tr><td><strong>App Script Version</strong></td><td>Your script&#8217;s internal version</td><td><code>4.0.0</code></td></tr><tr><td><strong>App Script Date</strong></td><td>Date of script creation (ISO)</td><td><code>2026-04-22</code></td></tr><tr><td><strong>App Script Author</strong></td><td>Who wrote the script (defaults to preference)</td><td><code>Admin</code></td></tr></tbody></table></figure>



<h3 class="wp-block-heading" style="font-size:28px">Deployment settings</h3>



<p><a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#deployment-settings"></a></p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th><th>Example</th></tr></thead><tbody><tr><td><strong>Require Admin</strong></td><td>Tri-state: Not Defined / True / False. &#8220;Not Defined&#8221; preserves the toolkit&#8217;s own value</td><td><code>True</code></td></tr><tr><td><strong>Success Exit Codes</strong></td><td>List of integers that mean success</td><td><code>0</code></td></tr><tr><td><strong>Reboot Exit Codes</strong></td><td>List of integers that require a reboot</td><td><code>1641, 3010</code></td></tr><tr><td><strong>App Processes to Close</strong></td><td>List of process names to close before install</td><td><code>code, code-insiders</code></td></tr></tbody></table></figure>



<h3 class="wp-block-heading" style="font-size:28px">Display settings</h3>



<p><a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#display-settings"></a></p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Install Name</strong></td><td>Override the display name used by PSADT during install</td></tr><tr><td><strong>Install Title</strong></td><td>Override the title bar text shown to users</td></tr></tbody></table></figure>



<h2 class="wp-block-heading" style="font-size:38px">Step 3: Parameters<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#step-3--parameters"></a></h2>



<p>Add custom PowerShell parameters to your deployment script. These are appended to the&nbsp;<code>param()</code>&nbsp;block alongside the default PSADT parameters.</p>



<p><strong>Default parameters</strong>&nbsp;(always present, read-only):</p>



<ul class="wp-block-list">
<li><code>DeploymentType</code>&nbsp;—&nbsp;<code>Install</code>&nbsp;/&nbsp;<code>Uninstall</code>&nbsp;/&nbsp;<code>Repair</code></li>



<li><code>DeployMode</code>&nbsp;—&nbsp;<code>Auto</code>&nbsp;/&nbsp;<code>Interactive</code>&nbsp;/&nbsp;<code>NonInteractive</code>&nbsp;/&nbsp;<code>Silent</code></li>



<li><code>SuppressRebootPassThru</code>&nbsp;(switch)</li>



<li><code>TerminalServerMode</code>&nbsp;(switch)</li>



<li><code>DisableLogging</code>&nbsp;(switch)</li>
</ul>



<p><strong>For each custom parameter you can set:</strong></p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Name</strong></td><td>Parameter name (e.g.,&nbsp;<code>ConfigFile</code>)</td></tr><tr><td><strong>Type</strong></td><td><code>System.String</code>,&nbsp;<code>System.Boolean</code>,&nbsp;<code>System.Int32</code>,&nbsp;<code>System.Management.Automation.SwitchParameter</code>, etc.</td></tr><tr><td><strong>Mandatory</strong></td><td>Whether the parameter is required</td></tr><tr><td><strong>ValidateSet</strong></td><td>Comma-separated list of allowed values (renders as&nbsp;<code>[ValidateSet('A','B','C')]</code>)</td></tr><tr><td><strong>Default Value</strong></td><td>Value used when the parameter is not specified</td></tr><tr><td><strong>Description</strong></td><td>Help text rendered as a&nbsp;<code># comment</code>&nbsp;above the parameter</td></tr></tbody></table></figure>



<p><strong>Example use case:</strong>&nbsp;Add&nbsp;<code>-Environment</code>&nbsp;with&nbsp;<code>ValidateSet = Dev,Staging,Production</code>&nbsp;to control which configuration file a caller deploys.</p>



<h2 class="wp-block-heading" style="font-size:38px">Step 4: Install phase<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#step-4--install-phase"></a></h2>



<p>Write the PowerShell code that runs when&nbsp;<code>DeploymentType = Install</code>. The phase is split into three Monaco code editors:</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Section</th><th>When It Runs</th><th>Typical Use</th></tr></thead><tbody><tr><td><strong>Pre-Installation</strong></td><td>Before the main install</td><td>Close running apps, back up settings, check prerequisites</td></tr><tr><td><strong>Installation</strong></td><td>Main install logic</td><td>Run MSI/EXE installer, copy files, set registry keys</td></tr><tr><td><strong>Post-Installation</strong></td><td>After the main install</td><td>Create shortcuts, configure settings, clean up temp files</td></tr></tbody></table></figure>



<p><strong>Editor features:</strong></p>



<ul class="wp-block-list">
<li>Full PowerShell syntax highlighting (Monaco Editor)</li>



<li><strong>Cmdlet autocomplete</strong>&nbsp;— start typing any PSADT v4 cmdlet name and the editor suggests it, including a snippet with required parameters. Type&nbsp;<code>-</code>&nbsp;after a known cmdlet to get parameter suggestions with their types, required flag, description, and valid values.</li>



<li><strong>Function Builder</strong> button — opens a modal to pick a cmdlet, fill in its parameters via form fields (with a file picker populated from your uploaded files), and insert the generated code at the cursor. See Function Builder &amp; Cmdlet Autocomplete.</li>



<li><strong>Maximize</strong>&nbsp;— each editor has a full-screen toggle</li>



<li><strong>Clear</strong>&nbsp;— wipe the section&#8217;s content</li>
</ul>



<p><strong>Example installation code:</strong></p>



<pre class="wp-block-preformatted">## Install the MSI
Start-ADTMsiProcess -FilePath 'MyApp.msi' -Action Install

## Copy configuration file
Copy-ADTFile -Path "$($adtSession.DirFiles)\config.xml" -Destination "$envProgramFiles\MyApp\"</pre>



<h2 class="wp-block-heading" style="font-size:38px">Step 5: Uninstall phase<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#step-5--uninstall-phase"></a></h2>



<p>Same three-section structure (Pre, Main, Post) as the Install Phase. Runs when&nbsp;<code>DeploymentType = Uninstall</code>.</p>



<p><strong>Example:</strong></p>



<pre class="wp-block-preformatted">## Remove the MSI
Uninstall-ADTApplication -Name 'MyApp' -FilterScript { $_.Publisher -eq 'Contoso' }

## Clean up leftover files
Remove-Item -Path "$envProgramFiles\MyApp\config.xml" -Force -ErrorAction SilentlyContinue</pre>



<h2 class="wp-block-heading" style="font-size:38px">Step 6: Repair phase<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#step-6--repair-phase"></a></h2>



<p>Same three-section structure. Runs when&nbsp;<code>DeploymentType = Repair</code>. Many packages leave the repair phase empty — that&#8217;s fine; PSADT simply runs an empty function.</p>



<h2 class="wp-block-heading" style="font-size:38px">Step 7: Script preview &amp; test run<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#step-7--script-preview--test-run"></a></h2>



<p>Displays the complete generated script in a read-only Monaco editor with PowerShell highlighting. This is exactly what&nbsp;<code>Invoke-AppDeployToolkit.ps1</code>&nbsp;will contain in your exported package.</p>



<p><strong>Actions on this page:</strong></p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Control</th><th>Description</th></tr></thead><tbody><tr><td><strong>Copy to Clipboard</strong></td><td>Copy the full generated script</td></tr><tr><td><strong>Deployment Type</strong></td><td>Select&nbsp;<code>Install</code>&nbsp;/&nbsp;<code>Uninstall</code>&nbsp;/&nbsp;<code>Repair</code>&nbsp;for the Test Run</td></tr><tr><td><strong>Deploy Mode</strong></td><td>Select&nbsp;<code>Interactive</code>&nbsp;/&nbsp;<code>NonInteractive</code>&nbsp;/&nbsp;<code>Silent</code>&nbsp;for the Test Run</td></tr><tr><td><strong>Test Run</strong></td><td>Execute the generated script on&nbsp;<strong>this machine</strong>&nbsp;with the chosen parameters. Output streams into an embedded terminal below the editor.</td></tr><tr><td><strong>Run as Admin</strong></td><td>Toggle whether Test Run launches an elevated PowerShell (UAC prompt)</td></tr><tr><td><strong>Terminal</strong></td><td>Shows streamed stdout/stderr. Use the eraser icon to clear, the&nbsp;<code>x</code>&nbsp;to close.</td></tr></tbody></table></figure>



<p>Test Run uses the same PSADT module and&nbsp;<code>Files/</code>&nbsp;directory that would ship in the exported zip. It has a 120-second timeout.</p>



<p>Export is available from the&nbsp;<strong>Packages Workspace</strong>&nbsp;toolbar (not from this page) — see below.</p>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-creating-a-package/">Creating a package</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-creating-a-package/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Exporting packages</title>
		<link>https://xoap.io/docs/psadt-package-wizard-exporting-packages/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-exporting-packages/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:49:29 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31223</guid>

					<description><![CDATA[<p>There are three ways to export: In the desktop app, exports are written directly to the&#160;Default Output Folder&#160;set in Settings. If that path is empty or invalid, the app falls back to your Downloads folder. The exported&#160;.zip&#160;contains everything needed to deploy: Free vs Paid:&#160;In the paid edition, enabling&#160;Include README.md&#160;on the Settings → General tab causes [&#8230;]</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-exporting-packages/">Exporting packages</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<p>There are three ways to export:</p>



<ol class="wp-block-list">
<li><strong>Per-package export</strong>&nbsp;— from the dashboard, click&nbsp;<strong>Export</strong>&nbsp;on a package card</li>



<li><strong>Batch export</strong>&nbsp;— select multiple packages and click the&nbsp;<strong>Export</strong>&nbsp;toolbar icon</li>



<li><strong>HTTP download</strong>&nbsp;— when running in a browser (not the desktop app), exports download as&nbsp;<code>{AppVendor}_{AppName}_{Version}_{Arch}.zip</code>&nbsp;through the browser</li>
</ol>



<p>In the desktop app, exports are written directly to the&nbsp;<strong>Default Output Folder</strong>&nbsp;set in Settings. If that path is empty or invalid, the app falls back to your Downloads folder.</p>



<p>The exported&nbsp;<code>.zip</code>&nbsp;contains everything needed to deploy:</p>



<pre class="wp-block-code"><code>Contoso_MyApp_1.0.0_x64.zip
  Invoke-AppDeployToolkit.ps1     &lt;- Your generated script
  Invoke-AppDeployToolkit.exe     &lt;- PSADT executable stub
  PSAppDeployToolkit/             &lt;- PSADT module
  PSAppDeployToolkit.Extensions/  &lt;- Extensions (if present in toolkit)
  Config/                         &lt;- Configuration
  Strings/                        &lt;- Localization
  SupportFiles/                   &lt;- Support files
  Assets/                         &lt;- Icons
  Files/                          &lt;- Your uploaded files
    MyApp.msi
    config.xml
</code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p><strong>Free vs Paid:</strong>&nbsp;In the paid edition, enabling&nbsp;<strong>Include README.md</strong>&nbsp;on the Settings → General tab causes a&nbsp;<code>README.md</code>&nbsp;with package metadata, parameters, and phase documentation to be generated and added to the exported zip. The toggle is visible but locked in the free edition.</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-exporting-packages/">Exporting packages</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-exporting-packages/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Importing existing packages</title>
		<link>https://xoap.io/docs/psadt-package-wizard-importing-existing-packages/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-importing-existing-packages/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:52:20 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31241</guid>

					<description><![CDATA[<p>You can import existing PSADT packages (v3 or v4) from&#160;.zip&#160;files. For each zip, the wizard will: For v3 packages, command names and variables are automatically translated to v4 syntax using the same translation service used by the&#160;/api/translate&#160;endpoint. After import, you can review and edit each package through the normal wizard steps.</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-importing-existing-packages/">Importing existing packages</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>You can import existing PSADT packages (v3 or v4) from&nbsp;<code>.zip</code>&nbsp;files.</p>
</blockquote>



<ol class="wp-block-list">
<li>From the dashboard, click&nbsp;<strong>Import Local</strong></li>



<li>A drawer opens; drop one or more&nbsp;<code>.zip</code>&nbsp;files (or click to browse)</li>



<li>The wizard processes each zip and reports status</li>
</ol>



<p>For each zip, the wizard will:</p>



<ul class="wp-block-list">
<li>Detect whether it&#8217;s a v3 (<code>Deploy-Application.ps1</code>) or v4 (<code>Invoke-AppDeployToolkit.ps1</code>) package</li>



<li>Parse the script to extract session configuration values</li>



<li>Extract phase content (pre/main/post for each deployment type)</li>



<li>Extract any custom parameters</li>



<li>Copy&nbsp;<code>Files/*</code>&nbsp;into the package&#8217;s workspace directory</li>



<li>Add a new package to your workspace (respecting the 10-package cap)</li>
</ul>



<p>For v3 packages, command names and variables are automatically translated to v4 syntax using the same translation service used by the&nbsp;<code>/api/translate</code>&nbsp;endpoint.</p>



<p>After import, you can review and edit each package through the normal wizard steps.</p>



<p></p>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-importing-existing-packages/">Importing existing packages</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-importing-existing-packages/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Installed apps</title>
		<link>https://xoap.io/docs/psadt-package-wizard-installed-apps/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-installed-apps/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:53:15 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31225</guid>

					<description><![CDATA[<p>Installed apps The&#160;Installed Apps&#160;page (/installed-apps) lets you browse applications installed on your Windows machine. Controls Control Description Search Filter the list by application name Include system components Include hidden system apps in the listing Refresh Re-query the registry Details panel Select an app to see publisher, version, install location, uninstall string, registry source Generate Command [&#8230;]</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-installed-apps/">Installed apps</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<h2 class="wp-block-heading" style="font-size:38px">Installed apps<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#installed-apps"></a></h2>



<p>The&nbsp;<strong>Installed Apps</strong>&nbsp;page (<code>/installed-apps</code>) lets you browse applications installed on your Windows machine.</p>



<h2 class="wp-block-heading" style="font-size:38px">Controls<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#controls"></a></h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Control</th><th>Description</th></tr></thead><tbody><tr><td><strong>Search</strong></td><td>Filter the list by application name</td></tr><tr><td><strong>Include system components</strong></td><td>Include hidden system apps in the listing</td></tr><tr><td><strong>Refresh</strong></td><td>Re-query the registry</td></tr><tr><td><strong>Details panel</strong></td><td>Select an app to see publisher, version, install location, uninstall string, registry source</td></tr><tr><td><strong>Generate Command</strong></td><td>Produces both a&nbsp;<strong>v3</strong>&nbsp;(<code>Execute-MSI</code>&nbsp;/&nbsp;<code>Execute-Process</code>) and a&nbsp;<strong>v4</strong>&nbsp;(<code>Uninstall-ADTApplication</code>&nbsp;/&nbsp;<code>Start-ADTProcess</code>) uninstall command for the selected app</td></tr><tr><td><strong>Take Snapshot</strong></td><td>Take a &#8220;before&#8221; snapshot of installed apps to&nbsp;<code>%AppData%\XOAP\PackageWizard\workspace\installed-apps-snapshot.json</code></td></tr><tr><td><strong>Compare</strong></td><td>Compare current state to the last snapshot. Each app is reported as&nbsp;<code>installed</code>,&nbsp;<code>removed</code>,&nbsp;<code>modified</code>, or&nbsp;<code>unchanged</code></td></tr></tbody></table></figure>



<p>The registry is queried from:</p>



<ul class="wp-block-list">
<li><code>HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\</code>&nbsp;(64-bit)</li>



<li><code>HKLM\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\</code>&nbsp;(32-bit)</li>



<li><code>HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall\</code>&nbsp;(per-user)</li>
</ul>



<h2 class="wp-block-heading" style="font-size:38px">Snapshot workflow<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#snapshot-workflow"></a></h2>



<ol class="wp-block-list">
<li>Click&nbsp;<strong>Take Snapshot</strong>&nbsp;before running your deployment</li>



<li>Run your PSADT package (via Test Run or a real deploy)</li>



<li>Click&nbsp;<strong>Compare</strong>&nbsp;to see which applications were installed, removed, or modified</li>



<li>Results show status for each app and can help you verify that your uninstall phase cleans up everything your install phase added</li>
</ol>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-installed-apps/">Installed apps</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-installed-apps/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Logs</title>
		<link>https://xoap.io/docs/psadt-package-wizard-logs/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-logs/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:54:06 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31227</guid>

					<description><![CDATA[<p>The&#160;Logs&#160;page (/logs) shows the API server&#8217;s log files. Files are stored in&#160;%AppData%\XOAP\PackageWizard\logs\. Each session&#8217;s log has a 10 MB size cap; files older than 14 days are cleaned up on startup. A parallel log for the desktop shell (desktop-{yyyy-MM-dd}.log) exists in the same folder but is not shown in this viewer.</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-logs/">Logs</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>The&nbsp;<strong>Logs</strong>&nbsp;page (<code>/logs</code>) shows the API server&#8217;s log files.</p>
</blockquote>



<ul class="wp-block-list">
<li><strong>Session selector</strong>&nbsp;— each time the API starts it opens a new log file named&nbsp;<code>api-{yyyy-MM-dd-HHmmss}.log</code>. The dropdown lists all sessions still on disk (14-day retention).</li>



<li><strong>Monaco viewer</strong>&nbsp;— the selected log is rendered read-only in a code editor</li>



<li><strong>Search</strong>&nbsp;— filter lines in the current log</li>



<li><strong>Auto-refresh</strong>&nbsp;— the current session log refreshes every 5 seconds so you can watch requests stream in live</li>
</ul>



<p>Files are stored in&nbsp;<code>%AppData%\XOAP\PackageWizard\logs\</code>. Each session&#8217;s log has a 10 MB size cap; files older than 14 days are cleaned up on startup. A parallel log for the desktop shell (<code>desktop-{yyyy-MM-dd}.log</code>) exists in the same folder but is not shown in this viewer.</p>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-logs/">Logs</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-logs/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Tags</title>
		<link>https://xoap.io/docs/psadt-package-wizard-tags/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-tags/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:54:35 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31245</guid>

					<description><![CDATA[<p>Tags help you organize packages in the dashboard. Open&#160;Tags&#160;from the sidebar footer. Managing Tags Assigning Tags Each package can have up to&#160;5 tags&#160;in the free edition. Tags appear as colored badges on package cards and in the tag filter dropdown.</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-tags/">Tags</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>Tags help you organize packages in the dashboard. Open&nbsp;<strong>Tags</strong>&nbsp;from the sidebar footer.</p>
</blockquote>



<h2 class="wp-block-heading" style="font-size:38px">Managing Tags<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#managing-tags"></a></h2>



<ul class="wp-block-list">
<li><strong>Create</strong>&nbsp;a tag with a name (max 40 characters), description (max 160), and color</li>



<li>Available colors:&nbsp;<code>cyan</code>,&nbsp;<code>pink</code>,&nbsp;<code>orange</code>,&nbsp;<code>green</code>,&nbsp;<code>purple</code>,&nbsp;<code>indigo</code></li>



<li><strong>Edit</strong>&nbsp;or&nbsp;<strong>Delete</strong>&nbsp;tags at any time. Deleting a tag removes it from all packages automatically.</li>
</ul>



<h2 class="wp-block-heading" style="font-size:38px">Assigning Tags<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#assigning-tags"></a></h2>



<ul class="wp-block-list">
<li>From the dashboard, click the tag icon on a package card, or</li>



<li>Select multiple packages and click&nbsp;<strong>Assign Tags</strong>&nbsp;on the toolbar</li>
</ul>



<p>Each package can have up to&nbsp;<strong>5 tags</strong>&nbsp;in the free edition. Tags appear as colored badges on package cards and in the tag filter dropdown.</p>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-tags/">Tags</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-tags/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Settings</title>
		<link>https://xoap.io/docs/psadt-package-wizard-settings/</link>
					<comments>https://xoap.io/docs/psadt-package-wizard-settings/#respond</comments>
		
		<dc:creator><![CDATA[Stella]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 11:55:43 +0000</pubDate>
				<guid isPermaLink="false">https://xoap.io/?post_type=docs&#038;p=31229</guid>

					<description><![CDATA[<p>Open&#160;Settings&#160;from the sidebar footer. It is organized into three side-tabs. General tab Default package values Field Description Default App Script Author Pre-fills the&#160;AppScriptAuthor&#160;field in every new package. Leave empty to preserve the toolkit&#8217;s own default. Default Require Admin Tri-state (Not Defined / True / False). &#8220;Not Defined&#8221; preserves the toolkit value; True/False overrides it for [&#8230;]</p>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-settings/">Settings</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-08f878cd wp-block-group-is-layout-flex">
<p><a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#settings"></a></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>Open&nbsp;<strong>Settings</strong>&nbsp;from the sidebar footer. It is organized into three side-tabs.</p>
</blockquote>



<h2 class="wp-block-heading" style="font-size:38px">General tab<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#general-tab"></a></h2>



<h3 class="wp-block-heading" style="font-size:28px">Default package values<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#default-package-values"></a></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Default App Script Author</strong></td><td>Pre-fills the&nbsp;<code>AppScriptAuthor</code>&nbsp;field in every new package. Leave empty to preserve the toolkit&#8217;s own default.</td></tr><tr><td><strong>Default Require Admin</strong></td><td>Tri-state (Not Defined / True / False). &#8220;Not Defined&#8221; preserves the toolkit value; True/False overrides it for new packages.</td></tr><tr><td><strong>Default Output Folder</strong></td><td>Where exported&nbsp;<code>.zip</code>&nbsp;packages are saved in desktop mode. In the desktop app a&nbsp;<strong>Browse</strong>&nbsp;button opens a native folder picker.</td></tr></tbody></table></figure>



<h3 class="wp-block-heading" style="font-size:28px">Documentation options — locked in free edition<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#documentation-options--locked-in-free-edition"></a></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Include README.md in exported packages</strong></td><td>When enabled, adds a generated&nbsp;<code>README.md</code>&nbsp;with package metadata, parameters, and deployment phases into every exported zip.&nbsp;<strong>Locked in free edition.</strong></td></tr></tbody></table></figure>



<h3 class="wp-block-heading" style="font-size:28px">Package storage — locked in free edition<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#package-storage--locked-in-free-edition"></a></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Package Storage Path</strong></td><td>Sets a central / shared storage location so multiple users can collaborate on the same package workspace. Default:&nbsp;<code>%AppData%\XOAP\PackageWizard</code>.&nbsp;<strong>Locked in free edition</strong>&nbsp;— the text input and Browse button are displayed but disabled.</td></tr></tbody></table></figure>



<p>The&nbsp;<strong>Save Settings</strong>&nbsp;button at the top of the page saves General tab values and any pending Package Configuration edits in one action.</p>



<h2 class="wp-block-heading" style="font-size:38px">PSADT toolkit tab<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#psadt-toolkit-tab"></a></h2>



<h3 class="wp-block-heading" style="font-size:28px">Active toolkit for export<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#active-toolkit-for-export"></a></h3>



<p>Shows which toolkit will be used for script generation and export:</p>



<ul class="wp-block-list">
<li><strong>Source label</strong>&nbsp;—&nbsp;<code>Custom</code>,&nbsp;<code>Bundled</code>, or&nbsp;<code>No Toolkit Available</code></li>



<li><strong>Module Version</strong>&nbsp;— detected from&nbsp;<code>PSAppDeployToolkit/PSAppDeployToolkit.psd1</code></li>



<li><strong>Custom Extensions included</strong>&nbsp;— badge shown if&nbsp;<code>PSAppDeployToolkit.Extensions</code>&nbsp;is present</li>



<li><strong>Refresh</strong>&nbsp;— re-queries the server</li>
</ul>



<p>Below the status card:</p>



<ul class="wp-block-list">
<li><strong>Auto-check for toolkit updates on startup</strong>&nbsp;— toggles GitHub version check at startup</li>
</ul>



<p><strong>Resolution order</strong>&nbsp;(top wins):</p>



<ol class="wp-block-list">
<li>Custom toolkit path (if set and valid) — paid feature (see below)</li>



<li>Downloaded toolkit in&nbsp;<code>%AppData%\XOAP\PackageWizard\Toolkit\{tag}\</code></li>



<li>Bundled template shipped with the installer</li>
</ol>



<h4 class="wp-block-heading" style="font-size:21px">Download latest from GitHub<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#download-latest-from-github"></a></h4>



<ul class="wp-block-list">
<li>Large&nbsp;<strong>Download Latest PSADT</strong>&nbsp;button — fetches the latest release from&nbsp;<code>github.com/PSAppDeployToolkit/PSAppDeployToolkit</code>, extracts it (zip-slip protected), and sets it as the active toolkit</li>



<li>Displays the latest release tag and an &#8220;Update available&#8221; badge when applicable</li>
</ul>



<h4 class="wp-block-heading" style="font-size:21px">Use custom toolkit — locked in free edition<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#use-custom-toolkit--locked-in-free-edition"></a></h4>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Custom path</strong></td><td>A folder you control that contains&nbsp;<code>PSAppDeployToolkit/PSAppDeployToolkit.psd1</code>. Useful for custom branding, extensions, and forks.</td></tr><tr><td><strong>Set Path</strong></td><td>Validates and activates the custom path</td></tr></tbody></table></figure>



<p><strong>Locked in free edition.</strong>&nbsp;Both the text input and the button are displayed but disabled.</p>



<h3 class="wp-block-heading" style="font-size:28px">Package configuration tab<a href="https://github.com/xoap-io/psadt-package-wizard/blob/dev/docs/USER-MANUAL.md#package-configuration-tab"></a></h3>



<p>Reads&nbsp;<code>Config/config.psd1</code>&nbsp;from the active toolkit and renders each section as a card.</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Section</th><th>Contents</th><th>Editable?</th></tr></thead><tbody><tr><td><strong>Assets</strong></td><td>Icon paths, banner images, company logo</td><td><strong>Free:</strong>&nbsp;read-only (locked badge) —&nbsp;<strong>Paid:</strong>&nbsp;editable</td></tr><tr><td><strong>MSI</strong></td><td><code>MutexWaitTime</code>, MSI logging verbosity,&nbsp;<code>InstallParamsSilent</code>,&nbsp;<code>LoggingOptions</code>,&nbsp;<code>LogPath</code>, etc.</td><td><strong>Free &amp; Paid:</strong>&nbsp;editable</td></tr><tr><td><strong>Toolkit</strong></td><td>Toolkit file name, naming conventions, compression level</td><td><strong>Free:</strong>&nbsp;read-only (locked badge) —&nbsp;<strong>Paid:</strong>&nbsp;editable</td></tr><tr><td><strong>UI</strong></td><td>Dialog defer times, default language, banner height</td><td><strong>Free:</strong>&nbsp;read-only (locked badge) —&nbsp;<strong>Paid:</strong>&nbsp;editable</td></tr></tbody></table></figure>



<p>For each field the UI shows:</p>



<ul class="wp-block-list">
<li>The field key (e.g.&nbsp;<code>MSI_LogPath</code>)</li>



<li>Any comment/description parsed out of the&nbsp;<code>.psd1</code></li>



<li>A form control appropriate for the type (text input, number input, or True/False toggle)</li>
</ul>



<p>Editing a field and clicking&nbsp;<strong>Save Settings</strong>&nbsp;(top of page) writes the changes back to&nbsp;<code>config.psd1</code>&nbsp;(with zipslip / path-traversal protection). The signature block, if present, is stripped on save.</p>
</div>
<p>The post <a href="https://xoap.io/docs/psadt-package-wizard-settings/">Settings</a> appeared first on <a href="https://xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xoap.io/docs/psadt-package-wizard-settings/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
