This FTP client separates the program core from the GUI by using a protocol between both parts.
The core is written in C, and implements most of the FTP command to be able to browse FTPs, download and upload files.
It implements a global queue for downloads, multiple server connections, bookmarks, etc.
A command line interface is present as well as a telnet interface.
Interfaces written in other programming languages (for example Java, GTK, etc.) may be created to get the software more user friendly.
These details are provided for information only. No information here is legal advice and should not be used as such.