39 lines
1.6 KiB
Markdown
39 lines
1.6 KiB
Markdown
---
|
|
epic: 8
|
|
story: 8.9
|
|
title: "Portable Mode"
|
|
status: draft
|
|
---
|
|
|
|
## Epic 8 — Windows App (Rust + iced)
|
|
**Goal:** Fast, lightweight native Windows app -- single .exe, no runtime dependencies.
|
|
|
|
### Story 8.9: Portable Mode
|
|
|
|
As a **Windows user** who uses a USB drive,
|
|
I want CalcPad to run in portable mode when a marker file is present,
|
|
So that I can carry my calculator and all its data on a USB stick without installing anything on the host machine.
|
|
|
|
**Acceptance Criteria:**
|
|
|
|
**Given** a file named `portable.marker` exists in the same directory as `calcpad.exe`
|
|
**When** the app launches
|
|
**Then** all data (sheets, settings, configuration) is stored in a `data/` subdirectory alongside the `.exe` instead of in `%APPDATA%`
|
|
|
|
**Given** `portable.marker` does NOT exist alongside the `.exe`
|
|
**When** the app launches
|
|
**Then** the app uses the standard `%APPDATA%\CalcPad\` directory for storage (normal installed mode)
|
|
|
|
**Given** the app is in portable mode
|
|
**When** the user creates sheets and changes settings
|
|
**Then** all changes are written to the local `data/` directory
|
|
**And** no files are written to the system `%APPDATA%` or registry
|
|
|
|
**Given** the user copies the CalcPad folder (exe + portable.marker + data/) to a USB drive
|
|
**When** the user runs calcpad.exe from the USB on a different Windows machine
|
|
**Then** all sheets and settings from the original machine are available
|
|
|
|
**Given** the app is in portable mode
|
|
**When** the auto-update feature checks for updates
|
|
**Then** auto-update is disabled (or updates are downloaded to the portable directory) to avoid modifying the host system
|