Last month the W3C released a working draft of the File API, which defines the basic representations for files, lists of files, errors raised by access to files, and programmatic ways to read files
. The Firefox team have already implemented much of it, and have released a series of impressive demos on hacks.mozilla.org, which you can see if you have a recent beta of Firefox 3.6 (or a nightly trunk build).
The four demos shown to date display different (although related) aspects of the API, showing first multiple file uploads, then a drag and drop upload interface, next adding progress information (although this doesn’t work for me), then reading EXIF data from a JPEG image. You can imagine how these combined would be used for native drag and drop uploading to Flickr, for example.
The File API plays a big part in integrating the browser more tightly with the OS, particularly when combined with the drag and drop functionality, and I’m sure it’s only a matter of time until the other browsers implement this. Congratulations to the Firefox team for their work on this, and hacks.mozilla.org for some great demos.