Web Applications in CompleteFTP

CompleteFTP is not just a fileserver! The Professional and Enterprise Editions support a rich environment for developing web-applications in Javascript, known as JSS (server-side Javascript). This makes it a powerful platform for developing file-oriented web applications. For example, CompleteFTP could be used for:

  1. A photo-printing business that requires users to upload large images. Users would be able to upload photos using any protocol (FTP, SFTP, HTTP); see the photos show up on a web-page; and then organize and caption them interactively.
  2. An engineering firm with a mobile workforce where users can upload and download large files via FTP/SFTP, and then organize, annotate and share them via a web-app.
  3. A TV station or news website with roving reporters and camera-operators. Again, the video files are very large and are best uploaded via FTP or SFTP, but once uploaded it's useful to be able to organize and annotate them via a web-app.

In all these cases there is a significant advantage in having the same server handle both web-applications and file transfers. This contrasts with existing systems where the web-server and file-server are separate (e.g. Apache/Tomcat) thus requiring extra work for integration/interfacing (e.g. user-authentication, file-systems and inter-process messaging).

CompleteFTP's web-app feature can also be used to develop custom system administration interfaces. Administrators could, for example, in a few lines of HTML and Javascript create a form that allows them to add a CompleteFTP user and set up a directory structure under their home-directory.

To learn how to write JSS scripts, refer to the Introduction to JSS. Features are explained in JSS Features, while details on the API available to JSS developers may be found in the JSS API Guide. Remote procedure calls are central to JSS and are described in detail in JSS Remote Procedure Calls (RPC).