Black Mamba (MVP) - wvega/black-mamba GitHub Wiki

UI Description

  1. The first screen shows the list of Items.
  2. Tapping an Item in the List opens the detailed view of that Item showing available Item Variations.
    1. An Item Variation is the combination of a Brand, Presentation (Weight, Units), Price and Store.
    2. Tapping the Add icon in the Navigation Bar opens the screen to add a new Item Variation.
      1. User should add, in order, Presentation, Price, Store and Brand.
      2. The Brand is, for now, just the name of the brand.
      3. The Store is, for now, the name of the Store (and its location, if available).
    3. It shows the cost for each ml, gr or u of the item.
  3. Swipping to Right: Add Item Variation.
  4. Available units will be millilitre (ml), gram (gr), unit (u).

Models

Brand

  • id
  • name

Store

  • id
  • name
  • location

Item

  • id
  • name (Suavizante)

Item Variation

  • id
  • item (ref)
  • name
  • description?
  • brand (ref)
  • presentation_amount (weight, units)
  • presentation_unit

Item Variation Purchase

  • store (ref)
  • price

Components

  • BlackMamba

    • NavigatorIOS
      • ItemsList
      • ItemVaraitionsList
      • ItemVariationDetails
  • ItemsList

    • ListView
  • ItemVariationsList

    • ListView
  • ItemVariationDetails

    • Details
    • ListView
      • ItemVariationPurchaseRow

Questions

  1. How to model Presentation? Examples of presentation are: 1 litre, 200 grams, 2 kg, 6 units.

Ideas for the Future

  1. Item Variations should be ordered from most cost-effective to less cost-effective. For example, it is cheaper to buy a 500 grams bag if you pay $0.05 for each gram than a 250 grams bag paying $0.07 for each gram.