Files
ImpTune/.planning/PROJECT.md
T
2026-04-10 10:25:16 +02:00

3.1 KiB

ImpTune

What This Is

A self-hosted webapp (single Docker container) that lets IT technicians configure printer deployments and export ready-to-deploy packages for Microsoft Intune or NinjaRMM. It handles driver packaging, printer settings, install script generation, and .intunewin wrapping — all from a simple browser UI.

Core Value

Generate a complete, working printer deployment package (script + drivers + icon) in minutes instead of manually scripting each printer setup.

Requirements

Validated

(None yet — ship to validate)

Active

  • Upload or reference driver packages (ZIP/INF) from local storage or network share
  • Configure all printer parameters: name, IP/port, color/BW, duplex, paper size, default tray, and other common settings
  • Generate PowerShell install script that detects user vs. SYSTEM context and self-elevates when run by a user
  • Export full Intune package (.intunewin) with bundled drivers, script, and custom icon
  • Export NinjaRMM package (ZIP with PS script + driver files)
  • Organize printers by client/tenant in a single no-auth interface
  • Remember uploaded driver packages across sessions (minimal persistence)
  • Run as a single Docker container with minimal dependencies

Out of Scope

  • User authentication / separate logins — internal tool on private network
  • Full deployment history / audit log — not needed for v1
  • Direct Intune/Ninja API integration (push deployments) — export packages only
  • Mobile app — desktop browser only

Context

  • Target users: MSP technicians managing printers across multiple client sites
  • Multi-brand environment: HP, Canon, Ricoh, Brother, and others
  • IntuneWinAppUtil.exe will be bundled inside the container (or its format reimplemented) to produce .intunewin files
  • NinjaRMM deployments are script-based — a ZIP with PowerShell + drivers is the deliverable
  • The generated PowerShell script must handle elevation: detect if running as SYSTEM (Intune/RMM) or as a user, and self-elevate if needed
  • Intune deployments need a selectable app icon embedded in the package
  • No authentication required — the app runs on a private/internal network

Constraints

  • Deployment: Single Docker container — no external database, message queue, or sidecar services
  • Dependencies: Minimal — the fewer runtime dependencies the better
  • Platform: Generated scripts target Windows endpoints (PowerShell 5.1+)
  • Persistence: Lightweight — store driver packages on a Docker volume, use SQLite or flat files for config

Key Decisions

Decision Rationale Outcome
No authentication Internal tool on private network, simplicity over security — Pending
Bundle IntuneWinAppUtil Avoid requiring user to provide external tooling — Pending
Single Docker container Minimal ops burden, easy to deploy and maintain — Pending
Minimal persistence (drivers only) Printers configured fresh each time, reduces state management complexity — Pending

Last updated: 2026-04-10 after initialization