Define the file operations people need
A file manager can list directories, show metadata, transfer files, create folders and edit text. We specify allowed roots, file size limits, encoding and what happens when a destination already exists. Customer facing access needs its own path boundaries.
Upload progress, transfer interruption and disk errors deserve clear states. The interface should preserve the original filename and explain whether a file was stored, rejected or remains incomplete.
Keep a recovery path for edits
Before saving, compare the loaded file with its current version where the environment supports it. A changed source should trigger a review. Backups and replacement writes need to preserve the intended ownership and permissions.
We test empty files, long names, Unicode, symbolic links and restricted directories. Sensitive file content belongs behind the same authorization checks as the shell.
Connect file actions to the current session
The DSDillon Terminal project includes SFTP actions beside the active server session. A separate web portal can use a scoped gateway or service account. The choice depends on who owns the files and who approves changes.
| Action | Information to retain |
|---|---|
| Upload | Destination, filename, byte count and completion state |
| Edit | Original version, approved change and backup reference |
| Move | Source, destination and collision handling |
| Download | Authorization, selected file and result |
Prepare a file workflow example
Provide a redacted folder layout, typical file sizes and one upload or editing task. State whether the files belong to staff, customers or separate companies. This establishes the access and audit requirements.
Before you begin
Can files be edited without a separate FTP app?
Yes. A terminal or portal can include a text editor and file transfer workflow. The permitted file types and recovery behaviour are agreed first.
Can each customer be limited to its own folder?
Yes. The boundary must be enforced by the server and verified against path traversal, links and another customer identity.
DSDillon / 26 September 2026

