top of page

Project Speculate

  • Alexandra Charland
  • Feb 8, 2021
  • 3 min read

Updated: Feb 9, 2021

The nutrition app I want to make will calculate the overall nutrition stats of a recipe based on the user's ingredient preferences. Other nutrition apps I've tried so far (MyPlate, MyFitnessPal, Chronometer, Nutritionix's app) allow you to search both general and specific ingredients to add to recipes, however some of them are not flexible in terms of measurements (referencing only the recommended serving size instead of the actual amount used in the recipe), and all of them so far make the user search through a long list of ingredients without saving the user's ingredient preferences. My app will be a simpler nutritional database for recipes that takes into account the user's grocery preferences by saving them. For now I'm keeping it simple in terms of features but I may add more features if time allows. I will start by implementing this application in iOS and try Android if I have time.


Features:


Back-end:

  • Nutrition API: The API that I will use for this app will be able to retrieve nutrition information for specific food ingredients (such as Horizon Organic 2% lowfat milk). Some APIs that I can use for this are the free Nutritionix API or the free USDA API.

Tab bar items:

  • Food Inventory: The user can store their preferred grocery items here in a personalized database with general nutrition information. To add an ingredient, the user will tap a plus button to bring up the new ingredient interface with a search bar. This is where all of the API calls should happen as the user searches for their grocery items. The information retrieved from the API can be saved in a tableview format here, where each row stores an ingredient's nutritional information to be used for local referencing in the recipe tab. The table of food ingredients will be organized by food type (dairy, vegetables, meats, etc.) in searchable, alphabetical order.

  • Recipes: The user can create and save recipes with their nutritional information in a tableview format here. This table of recipes will be automatically sorted in searchable, alphabetical order. To fill in each line, the user will type a number on the keypad and choose from a list of common measurements in a picker. Then the user can begin typing the ingredient into the search bar on the current line, and while they are doing this a suggestion prompt will come up with a reference to an existing ingredient in the food inventory. If the ingredient is not found, the user will be prompted in the suggestion to add the new ingredient to the food inventory, in which the interface to add a new ingredient will pop up. Once the user adds a new ingredient, the interface will close, the new ingredient will be autofilled in the current line, and the user can move on to the next line.


Work estimates

Here is a concise index of all the features ordered by probable implementation order and my estimated time for each:


View controller design (3 days):

  • Tab bar view controller (10 minutes)

  • Table views in each tab (10 minutes)

  • Interface for adding ingredients (20 minutes)

  • Interface for creating recipes (20 minutes)

  • Individual recipe nutrition details (1 hour)

  • Individual ingredient nutrition details (1 hour)

  • Navigation from recipe table view to recipe details (1 day)

  • Navigation from ingredient table view to ingredient details (1 day)


API data (1 week):

  • Display API data in ingredient table view (2 hours)

  • Display API data in individual ingredient page (2 hours)

  • Connect ingredient table view row to individual ingredient page (1 day)

  • Save API ingredient data to a back-end database/data persistence method (3 days)

  • Save recipes with ingredients to back-end database (3 days)


Search bars (1 day):

  • Search through saved food inventory (1 hour)

  • Search through saved recipes (1 hour)

  • Retrieve food inventory data while creating recipes (2 hours)


Calculation (3 days):

  • Calculate overall nutritional value for a recipe based on ingredients chosen and amount of each used (3 days)


Goal for Iteration 1:

By the end of iteration 1, I want to have a full prototype with all these features modeled.

Recent Posts

See All
Project Close

Final project can be found on GitHub. As I mentioned before in the adapt phase, there's a lot that goes into building an app to make sure...

 
 
 
Project Adapt (Iteration 3)

For this iteration I tried to implement my app with features mostly complete. I realized that although they were there, some features...

 
 
 
Project Explore (Iteration 3)

For this iteration I wanted to have all of my features working. I was able to get most of the features implemented except the exact data...

 
 
 

Comments


© 2019 by Alexandra Charland. Proudly created with Wix.com

bottom of page