3 Commits
Author SHA1 Message Date
Johan Sandoval 18dc8961e2 Docs refresh: README, in-app user guide, screenshots
- README: configuration table, every web module, corrected filter and live
  update wording, Data/ file list.
- Using USMT Dash article rewritten as a user guide: pages and addresses,
  tracking, device details, filtering, phones and tablets, tips.
- Screenshots retaken from the current build.
2026-10-07 16:24:14 +00:00
Johan Sandoval a5c0a5210e Knowledge base: /docs/<title> permalinks, search, categories, count, better PDF
Articles get their own address (shareable, back/forward work); the list is
searchable by title and text, shows the article count, and is grouped into
Applications and Troubleshooting & Guides via a hidden category line set
from the editor. PDF export lays out at page width with page breaks, a title
block and page numbers; Print uses the browser's vector print. Inline code
is a pill that glows blue on hover, blockquotes no longer squeeze, and
GitHub-style [!NOTE] alerts render. [[Badge]] syntax inside code spans is
left alone.
2026-10-06 19:31:19 +00:00
Johan Sandoval 1c531bc2ab Generalize USMT Dash and add a containerized demo mode
Remove all environment-specific data and make the dashboard adoptable
anywhere, then add a demo that runs the real PowerShell services.

- Strip cached device data, internal knowledge-base articles and
  screenshots, server/site names and the old project notes; replace the
  knowledge base with generic sample articles and diagrams
- Move every environment value into Config/usmt-dash.psd1
- Route all infrastructure access in the worker and Get-Software.ps1
  through a provider (Providers/SCCM.ps1), with a config-driven asset
  inventory view instead of a hard-coded custom class
- Add Providers/Demo.ps1: a deterministic simulated fleet whose
  migrations progress in real time, and Demo/New-DemoData.ps1 to seed it
- Server: -Demo makes the API read-only; add get-config and get-logs;
  serve static files only from web/, Documentation/ and an allowlist of
  Data/ files with a path-traversal guard; gzip large responses
- Mirror both services' console output to Data/Logs via a Write-Host
  proxy, and add a terminal panel to the dashboard that streams it
- Demo sandbox (web/demo/demo.js): visitor changes to tags, articles and
  images are kept in the visitor's browser and echoed in the terminals;
  nothing a visitor does reaches the server
- Vendor marked, highlight.js and html2pdf.js instead of loading CDNs
- Dockerfile and compose file for hosting the demo (Coolify-ready)
2026-10-06 15:20:43 +00:00