Files
pirate-station/.planning/REQUIREMENTS.md
Mikkeli Matlock 4f6d7319da docs: define v1 requirements
21 requirements across 5 categories
7 requirements deferred to v2

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 01:11:57 +09:00

3.2 KiB

Requirements: Pirate Station

Defined: 2026-02-03 Core Value: Users can securely access and manage files on the Pi from anywhere via the web, with the server completely isolated to its designated storage directory.

v1 Requirements

Requirements for initial release. Each maps to roadmap phases.

Authentication

  • AUTH-01: User can log in with username and password
  • AUTH-02: Passwords stored with secure hashing (bcrypt/argon2)
  • AUTH-03: JWT tokens for session management
  • AUTH-04: User can log out

CLI Tool

  • CLI-01: Admin can create user account with username/password
  • CLI-02: Admin can delete user account
  • CLI-03: Admin can change user password
  • CLI-04: Admin can list all users

File Operations

  • FILE-01: User can browse folders and see file listing
  • FILE-02: User can upload files
  • FILE-03: User can download files
  • FILE-04: User can delete files and folders
  • FILE-05: User can create folders
  • FILE-06: User can rename files and folders
  • FILE-07: User can move files and folders

Web UI

  • UI-01: Current path displayed (non-clickable)
  • UI-02: .. entry for navigating up one directory
  • UI-03: File sizes displayed in listing
  • UI-04: Upload progress indicator

Infrastructure

  • INFRA-01: Docker container runs isolated to mounted volume only
  • INFRA-02: Single binary Go backend

v2 Requirements

Deferred to future release. Tracked but not in current roadmap.

UI Enhancements

  • UI-05: Drag-and-drop file upload
  • UI-06: Responsive mobile design
  • UI-07: Clickable breadcrumb navigation

Features

  • FEAT-01: File preview (images, text, video)
  • FEAT-02: Bulk file selection and operations

Out of Scope

Explicitly excluded. Documented to prevent scope creep.

Feature Reason
Self-registration Security — admin creates accounts via CLI only
Web admin panel Simplicity — CLI is sufficient for small user base
Per-user private folders Not needed — trusted group shares one space
File preview/streaming Complexity — just upload, download, manage
Tailscale integration User constraint — using frpc/rathole instead

Traceability

Which phases cover which requirements. Updated during roadmap creation.

Requirement Phase Status
AUTH-01 TBD Pending
AUTH-02 TBD Pending
AUTH-03 TBD Pending
AUTH-04 TBD Pending
CLI-01 TBD Pending
CLI-02 TBD Pending
CLI-03 TBD Pending
CLI-04 TBD Pending
FILE-01 TBD Pending
FILE-02 TBD Pending
FILE-03 TBD Pending
FILE-04 TBD Pending
FILE-05 TBD Pending
FILE-06 TBD Pending
FILE-07 TBD Pending
UI-01 TBD Pending
UI-02 TBD Pending
UI-03 TBD Pending
UI-04 TBD Pending
INFRA-01 TBD Pending
INFRA-02 TBD Pending

Coverage:

  • v1 requirements: 21 total
  • Mapped to phases: 0
  • Unmapped: 21 (pending roadmap)

Requirements defined: 2026-02-03 Last updated: 2026-02-03 after initial definition