docs: initialize project
This commit is contained in:
@@ -0,0 +1,62 @@
|
|||||||
|
# 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*
|
||||||
Reference in New Issue
Block a user