RecipeApp is a mobile application designed to provide users with a simple and intuitive way to discover and explore various recipes. The app utilizes the Google Search API to fetch recipe-related information based on user queries.
https://www.canva.com/design/DAF0wOopVf4/QnGUTsSPxEwkXeJu6JUbmw/view?utm_content=DAF0wOopVf4#6
For the first version of this app, I focused on getting the following features:
Users can enter keywords or queries in the search bar to find recipes. The app sends these queries to the Google Search API to retrieve relevant recipe information.
The search results are displayed as a list of cards, each representing a specific recipe. Each card contains an image, title, and snippet of the recipe.
The app leverages Jetpack Compose for building a modern and reactive user interface. Compose simplifies UI development by using a Kotlin-based, declarative syntax.
The app integrates with the Google Search API to fetch recipe data. It sends search queries to the API and processes the API responses to display relevant information.
The app follows the ViewModel architecture to separate the UI-related data from the UI controllers. A RecipeViewModel is responsible for managing and providing recipe-related data to the UI.
The app focuses on a simplified design with a clean and easy-to-navigate user interface. It aims to provide a quick and enjoyable recipe discovery experience for users.
Since this app uses the Google Search API, it needs an API Key to make the network calls.
I added an API_KEY variable to the file RecipeApp\app\src\main\res\raw\config.properties
:
// RecipeApp\app\src\main\res\raw\config.properties
API_KEY=YOUR_API_KEY_HERE
And the key is accessed by the ConfigReader.getApiKey(): String
function.
I focused on getting a MVP that would fetch the data from the Google Search API and display the results in a list of Composable UI Cards. Some of the next steps for the development of this app are:
Users can click on a recipe card to view more details about a specific recipe. The app displays additional information, such as ingredients, instructions, or nutritional facts. This will have to elaborate on how to be able to get this information from a link provided by the Google Search API.
Users have the option to login into the app, for a personalized user experience. This can lead to having access to lists, saved recipes, ideas list, etc.
Add a navigation menu to that users can navigate to the Home screen, preferences, saved recipes, lists, etc.
Users are able to create lists for grouping saved recipes into categories, for example: “Easy desserts” or “Thanksgiving favorites”.
This project was created for:
First place of the WWCode App Deploy Hackathon with Google Play