Wikimedia Apps/Commons

= Features =

End Goal: Have an app that expereienced commons users can use to easily upload Media

Each commons app will at the least have the following features. Additional features will be platform specific.


 * Login
 * Account Creation
 * Tracking
 * Discovery/Browse (to give users a reason to use app)
 * Single upload
 * Multiple upload
 * My contributions
 * Save for later
 * Queues
 * Campaigns

from: Mobile Strategy: Jan-Mar 2013 by hfung

Iteration
Date: 1/28/13 - 2/08/13

Android

 * https://github.com/Wikimedia/android-commons
 * https://github.com/Wikimedia/java-mwapi
 * https://github.com/wikimedia/android-mwlogin

Tasks

 * 1) Persistant Secure Login ✅
 * 2) Upload a photo to commons (only via share intents - no launchers) (background uploads!) ✅
 * 3) Be able to set title, description, select categories ✅
 * 4) Retry when upload fails (I should never have to type title, description, etc more than once)
 * 5) Able to queue and upload multiple files (shouldn't have to wait for one to finish downloading before next starts) ✅
 * 6) Feedback on what is happening via Notifications (not too spammy!)
 * 7) Ability to cancel a specific upload
 * 8) Tag mobile uploads appropriately, to enable tracking

Plumbing

 * 1) Setup Maven for http-fluent ✅, java-mwapi ✅, android-mwlogin ✅ and commons app ✅

Focus areas

 * 1) Compatibility with 2.3 and 4.x
 * 2) Appropriate retry functionality
 * 3) Does not 'fail silently'

iOS
https://github.com/Wikimedia/Commons-iOS

Tasks

 * 1) Persistant Secure Login (use iOS Keychain services for storage) ✅
 * 2) Select photos from gallery or take photo in app ✅
 * 3) Upload a photo to commons (upload while app is foreground; no background uploads yet?) ✅
 * 4) Upload using async i/o ✅
 * 5) Be able to set title, description [description done in demo app]
 * 6) Retry when upload fails (I should never have to type title, description, etc more than once)
 * 7) Able to queue and upload multiple files (shouldn't have to wait for one to finish downloading before next starts)
 * 8) show queue in the app, allow canceling
 * 9) link to your already-uploaded images on mobile web

Focus Areas

 * 1) Compatibility with iOS 5.0 and later
 * 2) * need to disable constraints; pull req broke toolbar positioning though
 * 3) Appropriate retry functionality
 * 4) Does not 'fail silently' -- good error messages everywhere
 * 5) Clean progress bar, backgrounded i/o ✅

Needs Design

 * Account creation
 * Discovery/Browse
 * Upload (non intent or gallery based)
 * My Contributions
 * Upload Later

Iteration 2
Date: 2/11/13 - 2/22/13

Backlog

 * My contributions
 * Account creation
 * Account tracking
 * Discovery/Browse
 * My contributions
 * Upload later
 * Campaign