Fine Uploader is the easiest javascript file uploader library to set up.

Code examples are provided, whether you are using a jQuery wrapper, or plain JavaScript.

Basic Setup

Want to upload files to your own server? You need only to include a CSS file, a JavaScript file, and handle the uploads on the server side according to the technology you are using. There are absolutely no other dependencies.

You can quickly set up an HTML page in order to use Fine Uploader:

  1. Download and unpack the latest version of Fine Uploader.
  2. Use one of the provided server scripts, or write your own.
  3. Setup your HTML and JavaScript.
  4. Upload!

Have a look at the following live demos for examples of common setups.

Manually Trigger Uploads & Edit File Names

The default behavior of Fine Uploader is to immediately attempt to upload files as they are selected. One option allows you to simply queue all files, and then start uploading at a later time by calling uploadStoredFiles() on your Fine Uploader instance. You can also easily allow your users to edit the names of each submitted file before uploading.

This Fine Uploader instance below also demonstrates the edit file name feature, which allows you to edit the name of any file before it is uploaded, simply by clicking on the "pencil" icon.

Note: File bytes are not actually being sent to the server for this demo due to limitations of the GitHub Pages server.



There are various options available to you when using Fine Uploader. In this demo, we've used a small subset of these options. To see all available options and their usage, please refer to Fine Uploader documentation on the Github repository.

We are implementing the following options in this demo:

  • restriction to jpeg, jpg, and txt files,
  • restriction to a maximum file size of 50 kB,
  • limit total number of submitted files to 3.

This demo uses the default template bundled with Fine Uploader UI. For details, see the styling documentation.

Note: File bytes are not actually being sent to the server for this demo due to limitations of the GitHub Pages server.


Upload Files Directly to Amazon S3

Fine Uploader has always supported uploading to your own server. Now you can remove the complexity and inefficiency of handling uploads on your local server by delegating to Amazon. Upload files directly to Amazon's Simple Storage Service from your browser! Want to upload to S3 without any server-side code at all? Have a look at our S3 no-server demo instead!

Below is a fully-functional live demo that also includes the native preview/thumbnail generation feature. Here, you can try out Fine Uploader S3 by sending files to one of our S3 buckets! Yes, this actually does upload files to an S3 bucket! You can also download the file after a successful upload (by clicking on the thumbnail).

This example demonstrates:

The server-side code for this demo was written in PHP. You can easily duplicate this example in your project by following our Fine Uploader S3 getting started guide.

Please read the blog post on the Fine Uploader S3 module for more details.

Note: If you want to test the auto-resume feature, you must use any browser other than IE9 and older or stock Android and submit a large file 6-15MB. After at least 5MB have been uploaded (since each chunk is 5 MiB): close or refresh the page, re-submit the file, and watch Fine Uploader pick up from where it left off!