Files

3.1 KiB

ADDED Requirements

Requirement: File tree as primary view

The mobile Repo Workspace SHALL display the file tree as the primary view with repository and branch selectors at the top.

Scenario: Viewing file tree

  • WHEN user navigates to a project's workspace on mobile
  • THEN a file tree is displayed showing folders and files in the repository

Scenario: Repository selection

  • WHEN user taps the repository selector dropdown
  • THEN a list of available repositories is shown for selection

Scenario: Branch selection

  • WHEN user taps the branch selector dropdown
  • THEN a list of branches is shown for selection

Requirement: File tree interactions

The file tree SHALL support folder expansion, file opening, and git status indicators.

Scenario: Expanding folder

  • WHEN user taps a folder in the tree
  • THEN the folder expands to show its contents, or collapses if already expanded

Scenario: Opening file

  • WHEN user taps a file in the tree
  • THEN the file opens in the editor view

Scenario: Git status indicators

  • WHEN files have git status (modified, staged, untracked)
  • THEN visual indicators (colors/icons) are shown next to affected files

Requirement: Bottom tab navigation

The mobile workspace SHALL provide bottom tabs for switching between File Tree, Editor, Git, and Terminal views.

Scenario: Switching to Editor tab

  • WHEN user taps the "Editor" tab
  • THEN the editor view is shown with the currently selected file (or empty state)

Scenario: Switching to Git tab

  • WHEN user taps the "Git" tab
  • THEN the git view is shown with status, commit form, and file lists

Scenario: Switching to Terminal tab

  • WHEN user taps the "Terminal" tab
  • THEN the terminal view is shown for the current repository

Requirement: Editor view

The editor view SHALL provide a full-screen code editing experience with syntax highlighting.

Scenario: Editing file

  • WHEN user opens a file and modifies it
  • THEN syntax highlighting is applied and changes can be saved

Scenario: Editor toolbar

  • WHEN viewing the editor
  • THEN a toolbar shows file name, save button, undo/redo buttons

Requirement: Git view

The git view SHALL show repository status and allow committing changes.

Scenario: Viewing git status

  • WHEN user opens the Git tab
  • THEN modified, staged, and untracked files are listed separately

Scenario: Staging files

  • WHEN user toggles a file's checkbox
  • THEN the file is staged or unstaged accordingly

Scenario: Committing changes

  • WHEN user enters a commit message and taps "Commit"
  • THEN staged files are committed with the provided message

Requirement: Terminal view

The terminal view SHALL provide a full-screen terminal for the repository's tool instance.

Scenario: Terminal for repository

  • WHEN user opens the Terminal tab
  • THEN a terminal is shown connected to the repository's active tool instance

Scenario: No active instance

  • WHEN no tool instance is running for the repository
  • THEN a message is shown with a button to start a new session