We have an existing website that sells embroidery design files.
Users browse/search through the design sets (approximately 500 sets) by category, name, new releases. Each design set has about 12 designs that are displayed to the user. On the website these are shown in a grid three columns wide by however many rows are required.
We would like to have an iPhone (and optionally iPad depending on cost) application developed that allows the user to browse the list of design sets. The standard iPhone list views (with graphic design see below) would apply. The first level navigation could be New sets, All Sets, By Category, Search. For both new sets and all sets a list of sets would be displayed in a grid fashion. There is one key image per set and a set title. The user would then click the set to view all the designs in the set. By Category would display a list of categories in a list and once a category was selected the result would be the same as new sets or all sets mentioned before.
There are user accounts which make available a user wish list and their previous purchase history. Therefore when browsing the sets a graphical indicator (badge or similar) should indicate if the user has purchased the item before or wants to add it to their wish list. The detail page for a set should support adding or removing the item from the wish list. This will make an XML call to the website and should not be stored locally in the app.
A user login area is required. (app should remember their account between sessions but they need option to login/change if required). Separate XML transactions will be available to support this. Even though information is remembered between sessions the login request should be sent each time. The return for the login request will include a list of any sets the user has already purchased so when browsing the sets these can be flagged.
All data will come from the website as XML as agreed in an upfront specification. As this file is large it will be gzipped. The XML will contain the list of sets (title, description, price), the set categories and search keywords and URL's to the set images. The app should cache this information and check for a new version of the XML (a small version file separate to the main data file will be available) before downloading. When images are downloaded for the sets they should be cached on the iPhone by URL. We will have a version number as part of the image URL which will change if the image is changed (rare).
The app should work without data connection (as data will be local) but obviously data connection is required to update the data (should be checked automatically each time the application is run).
Phase 2 is to support purchases which need to be integrated with our website as we have different specials that can't be supported through the in app purchasing process of iOS. The user will need to add sets to their cart that links to our website for price calculation and then complete their purchase with integration to mobile PayPal site.
This project also includes graphic design consistent with our website to be applied to the list controls and page layouts (we want something nice rather than standard iOS list controls).
Full source code is required to be provided.
We have our own app store account some assistance with the app provisioning will be required.