EcoKick README App created by: Jonathan Leung, Eric Hermann, Ngoc Bui ====== Installation Requirements ====== To run the app, just download the ipa from the link on our website, go to iTunes, click File->Add File to Library, and then sync your phone to your computer. Once synced, the app EcoKick should appear on the phone itself, and clicking on the app image will open the app and get it started! ====== Operating Instructions ====== The app should be relatively straightforward to operate, and error messages will be presented any time the user makes errors. To log into the app, the user can either sign in if they have login information or sign up if they haven't yet created a login. On the back end, the app isn't actually storing any login credentials, so it actually doesn't matter if the user creates a new login credential or not (users can just make up a name and password and the app will allow them to log in). Once in the app, there are four options across the bottom: Home, Create, Funded, and My Campaigns. On the home page, users can select campaigns that they might be interested in funding, view them to get more information, and fund if they'd like to. Funding is pretty self-explanatory: just enter a number in the fund box and click the “Fund Campaign" button. The app will then take you through a confirmation and thank you screen. The campaign you've funded will then be added to the “Funded" page in the third tab across the bottom, and removed from “Home." In the create tab, fill in the required fields to create a new campaign. A link to a jpg for the image URL will allow the picture at that URL to be displayed in the app. All fields are required except for inviting friends, and after clicking “Create" on the bottom of the page, the user is directed to a thank you page, and the campaign will be added to the “My Campaigns" page in the fourth tab across the bottom. The “Funded" tab contains campaigns the user has already chosen to fund, and any campaigns the user funds while in the app will be added to this page. If a campaign has been fully funded (as have “Compost for Christ! and Lights Out!), the individual campaign page will say “Funded!" and have an option to view “Campaign Updates." If they haven't provided any updates, there's a default picture and message on the Updates page (this might arise if the user fully funds a partially funded campaign in the “Home" tab). In “My Campaigns," users can view campaigns they've created and see how their campaigns are doing in terms of funding progress. Any campaigns they create while in the app will be added to this tab. ====== Limitations ====== The app does not track information from use to use, so every time users close the app, all campaigns that they've created or funded will go back to their original state before they opened it the first time. This was necessary to avoid creating complex back-end data structures that weren't necessary to the functioning of our app. The login information only tracks if the text field is filled, which means a user can enter any information they'd like as “login" credentials and it will be allowed, as long as the field isn't blank. The login fields clear every time you click on to either of them. This was done to erase the error message, but could be frustrating if a user wants to just change one character of a field for example. Certain names or short descriptions go farther than the bounds of the text field and do not leak over, instead just ending with an ellipsis. In general, the app does not check character bounds, so users can type as much as they'd like in any particular text field, though all that information won't necessarily be able to be displayed. Since the app is not connected to the internet, certain network buttons do not work properly. For instance, when the user wants to invite friends or share on Facebook or Twitter, the buttons do not lead anywhere and no e-mails are sent to the user's friends. Finally, the app does not allow a user to actually add updates to a campaign they've created that has been fully funded. This was hard-coded data meant to simplify implementation and keep the focus on the three tasks we had.