JavaFX FTP Client

A lightweight Java FX desktop FTP client using an engine–controller structure. It provides a login screen, a dashboard to view remote and local files, and core operations such as upload, download, delete, rename, and directory creation. The architecture separates UI (FXML + controllers) from transfer logic (FTP and local storage engines) for clearer maintenance and potential extension.

Technologies Used

JavaJavaFXFTPDesktopGradle

Key Features

  • Credential-based server login
  • Remote file listing & refresh
  • Local storage panel integration
  • File upload & download
  • Create, rename, delete files/folders
  • Transfer status feedback (UI-driven)
  • Engine/UI separation (controllers + engines)
  • Gradle build & packaging

Technical Stack

Java
JavaFX (FXML)
Gradle
FTP protocol