Commons Mobile upload app

The following document describes the design for the Commons Mobile upload app.

Rationale
Mobile phones have overtaken point and shoots as the most used cameras, yet there is no easy way to upload a picture from a mobile directly (and properly!) into Commons. This app aims to fix that.

Use Case #1: Simple Upload for experienced Commons user
Galadriel is an experienced Commons user who already has uploaded many files to Commons using the UploadWizard. She is taking a nice evening stroll when she comes across a scene that would make a wonderful addition to Commons. She has a phone with a nice camera, so takes a picture with the inbuilt camera app. Instead of going home, remembering to transfer the image, and then uploading it, she wants to be able to upload it then and there - and then move on. She is a good Commons citizen, so wants to make sure that the title is descriptive and appropriate categories are added.

Acceptance Criteria

 * 1) Able to upload any image from the Phone to Commons (via Android 'Share')
 * 2) Easily add a title & description
 * 3) Easily add as many categories as needed, with autocomplete wo make adding accurate categories faster
 * 4) Shows progress of upload and a notification when upload is complete
 * 5) Taking and uploading a photo to commons should be as fast as uploading a picture to Instagram

Status & Schedule
Yuvi is working on this in his spare time. NotNarayan is working on the designs for this in his spare time.

v1 of the app is a super-simple version that just lets you Share any image from your phone to Commons after adding appropriate metadata.

Currently, the underlying Java MediaWiki API library is being developed with rigorous unit tests. That work is about 95% done. Work on the app will start shortly.

Proposed Design
Screen 1 : The user, while on a hike spots a fine dragon fly resting on a leaf. He uses his android phone to take a picture of the insect and decides to upload it to commons.

Screen 2 : He clicks the share icon, and selects commons. The app launches, requests the user to login.

Screen 3 : While keeping the user in the context of the Image, the app requests the user to enter a title, description and categories for the image.

Screen 4 : A dropdown allows the user to quickly select categories.

Screen 5 : Once done, the user can hit upload.



App Developement
The current plan is to build this as a purely native Android application.