Working families, busy health care professionals, teachers and everyone else are pushed to the limit with time constraints. Take one thing off your plate by clicking a couple buttons to have meals planned and ingredients delivered to your door by a local grocer.
Based off of number of people, calorie requirements and days of food needed, magiKart will come up with 3 meals a day for your household. Submitting the meal plan to cart will push all of the ingredients to your Kroger cart for pickup or delivery.
React front end, with a JavaScript back-end and a SQL cloud.
Our first idea was to use the Amazon cart API, however local, fresh delivered ingredients are not available for adding to carts through the API. Next we tried the Amazon Fresh API, which no documentation is available for and would require assistance from AWS to implement. We were left with finding an API to a local grocer and settled on Kroger.
Overcoming the significant API challenges and getting a working app that pulls from recipe and ingredients APIs and pushes to the Kroger cart API to successfully populate a shopping cart full of food.
We learned a significant amount about build react front ends and making API call with authentication tokens.
We envision magiKart being able to integrate more features. Key features would include:
- Daily options for tomorrow's meals, click of a button gets groceries on order and delivered.
- Tracking of recently ordered groceries such as spices and staples to keep from reordering too often.
- Integration with other grocery stores and Amazon Fresh.
Public IP Address: 35.202.15.44
Connection Name: big-station-266218:us-central1:recipe
Kroger Account
Local Hosting Server
First API Call Documentation:
https://spoonacular.com/food-api/docs#Search-Recipes-Complex
First API call, only extracts Recipe ID at the moment
axios.get('https://api.spoonacular.com/recipes/complexSearch?&number=2&apiKey=' + spoonKey)
Second API Call Documentation:
https://spoonacular.com/food-api/docs#Get-Recipe-Information-Bulk
Second API call to get detailed recipe information
axios.get(informationBulk)
information bulk = String of recipeID's from first API call
First API Call: "https://api.kroger.com/v1/products?filter.term="
Second API Call: "https://api.kroger.com/v1/cart/add"