I am sending this email in hopes of finding a programmer to create a multiple file uploader application. We are a company that provides onlines photos to clients, and we upload the photos to our site. The volume of photos that we upload and post has forced us to create an application that will allow us to upload multiple images to multiple folders at one time.
Here are the basic requirements and criteria;
Should be cross platform. (Win, Mac, Linux)
Should run from browser.
Should not be stand alone app. (Too difficult to control distribution)
Should have very few options to simplify interface and usage.
To read image list from hard drive and display in an organized manner
To enable a user to further organize images into collections or categories
To enable a user to perform actions on image collections such as adding descriptions, rotations, gamma adjustments.
To store details of collections and actions in an 'instruction' file.
To upload images and 'instruction' file to a server.
To queue uploads and allow use of interface while uploads occur in background.
Instruction files should be stored per image rather than per collection to keep things simple should a connection to the server fail for any reason.
List of images should be correlated to list of inspections read from server prior to the beginning of any work.
Should be able to accept a variety of regular form fields, as defined at load time such as text, textarea, select, check, or radio, per image and image group.
Actions are not performed by the app. They are only simulated/demonstrated on thumbnails. Instructions generated by app will allow the server to perform actions once instructions and image are recieved.
Instructions should included a checksum or some other method of quickly determining that a proper image was uploaded, so that a notification may be sent back to the user (possibly through the app itself) that the image needs to be uploaded again, or simply have the app re-attempt the upload automatically.
We would require also a design/gui mockup to help us make our decision.