0% found this document useful (0 votes)
553 views55 pages

Food Recipe App 6

Uploaded by

jesuarts430
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
553 views55 pages

Food Recipe App 6

Uploaded by

jesuarts430
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 55

FOOD RECIPE APP

A Project work submitted to the jesu arts and science college alangudi in partial
fulfilment of requirements the award of the degree of

BACHELOR OF COMPUTER SCIENCE


Submitted by
1. M.RISHI - (REG NO: CB21S 207225)
2. S.DINESH KUMAR - (REG NO: CB21S 207211)
3. K.MANIKANDAN - (REG NO: CB21S 207218)
4. V.ARULANANDHU - (REG NO: CB21S 207208)
5. K.SRIVALLI - (REG NO: CB21S 207229)

Guided by
M.PANDIDURAI
MCA., M.Phil., B.Ed.,

DEPARTMENT OF COMPUTER SCIENCE


Jesu Arts and Science College
Alangudi, Pudukkottai - 622301.
(Affiliated to Bharathidasan University)
TIRUCHIRAPALLI
April-2024
JESU ARTS AND SCIENCE COLLEGE
ALANGUDI
PUDUKKOTTAI - 622301.
(Affiliated to Bharathidasan University)
TIRUCHIRAPALLI.

Mr. M .Pandidurai MCA.,M.Phil.,B.Ed.,


Assistant Professor, Department of Computer Science

CERTIFICATE

This is to certify that the project “ FOOD RECIPE APP” Submitted by

1. M.RISHI - (REG NO: CB21S 207225)


2. S.DINESHKUMAR - (REG NO: CB21S 207211)
3. K.MANIKANDAN - (REG NO: CB21S 207218)
4. V.ARULANANDHU - (REG NO: CB21S 207208)
5. K.SRIVALLI - (REG NO: CB21S 207229)

in partial fulfilment of the requirement for the award of the degree of


B.SC COMPUTER SCIENCE has been carried out under my guidance and
supervision during the academic year 2023 - 2024.

HEAD OF THE DEPARTMENT INTERNAL GUIDE

Submitted for viva-voice on ……………………..


EXTERNAL EXAMINERS
1.

2.
Mr. M.Pandidurai MCA.,M.Phil.,B.Ed.,
Assistant Professor, Department of Computer Science
JESU ARTS AND SCIENCE COLLEGE
ALANGUDI - 622301.

CERTIFICATE

This is to certify that the project “FOOD RECIPE APP”


submitted in partial fulfilment of the requirement for the award of the Degree of
B.Sc COMPUTER SCIENCE to the Bharathidasan University, Tiruchirapalli through
Jesu Arts and Science College, Alangudi is a bonafide record of the work done by

1. M.RISHI - (REG NO: CB21S 207225)


2. S.DINESH KUMAR - (REG NO: CB21S 207211)
3. K.MANIKANDAN - (REG NO: CB21S 207218)
4. V.ARULANANDHU - (REG NO: CB21S 207208)
5. K.SRIVALLI - (REG NO: CB21S 207229

Under my guidance and supervision.

Signature of the Guide

DATE :

PLACE :
ACKNOWLEDGEMENT

First of all it is a proud privilege to express my gratitude to our principal


Dr.RAVICHANDRAN M.Sc.,M.Phil.,Ph.D., Jesu Arts and Science College, Alangudi
for giving a golden opportunity to undertake the project work.

My hearty thanks to Prof.P.THENMOZHI M.Sc.,M.Phil., Head of the Department of


Computer Science, Jesu Arts and Science College,for his valuable support throughout
the project.

I am greatly indebted to express my deep sense of gratitude to


Prof.M.PANDIDURAI M.Sc.,M.Phil.,B.Ed., Project Guide, for his overwhelming
support and valuable guidance for successful completion of my project.

At the outset we wish to convey our sincere thanks to the staff members of Computer
Science Department and all our friends who guided in our endeavour.

1. M.RISHI

2. S.DINESH KUMAR
3. K.MANIKANDAN
4. V.ARULANANDHU
5. K.SRIVALLI
S.N
TITLE PAGE.NO
O
ABSTRACT
1 INTRODUCTION 1
2 SOFTWARE REQUIREMENTS SPECIFICATION
2.1
2.2
2.3
3 SYSTEM CONFIGURATION
2.1 Problem statement

2.2 Objectives
2.3 Motivation
4 SYSTEM ANALYSIS 6
4.1 Existing system

4.2 Proposal system

4.3 Summary
5 SYSTEM DESIGN 7
5.1 System architecture

5.2 Use case diagram


5.3 Entity relationship diagram

5.4 Database entries

5.5 Android application design

5.6 Activity diagram

5.7 Class diagram

6 IMPLEMENTATION 17

6.1 Environmental setup


6.2 Module description
6.3 Software description
6.4 Simple code
7 SYSTEM TESTING 37

8 38
RESULTSCREENSHOTS
9 45
CONCLUSION
ABSTRACT

The use of mobile devices has increased significantly in the past decade. All these
devices use applications that are created for them. These applications can provide many
different services including, social media, music streaming, video streaming, ride
sharing, online shopping, and video games.
Some of these apps need to be constantly connected to the internet to function properly,
while others can work offline.

This paper presents a food recipe cross-platform application that helps users find and
view different food recipes based on different categories, as well as allowing them to
search recipes of their comfort using smart search-filters and categories. The users can
filter the list of recipes based on the ingredients used in the recipe, the prep time, cook
time, and diet.
The app aspires to run efficiently, while having an elegant user experience with essential
functionality that of an online application and yet remaining completely offline.
1. INTRODUCTION

Nowadays, it is safe to admit that the world has attained the form of global village,
where everything is accessible through technology. The advent of mobile phone has
shaped the life of many people. It is hard to pass a day by without checking and
rechecking your social network accounts. This can merely assert that mobile
applications has already made their ways to our lives.Research shows that regularly
eating home-cooked meals as a family is linked to healthier and happier kids, and
teens who are less likely to use alcohol, drugs, or cigarettes. According to Butler,
“In recent years, the emergence of smart phones has changed the definition of
mobile phones. Phone is no longer just a communication tool, but also an essential
part of the people's communication and daily life. Various applications added
unlimited fun for people's lives. It is certain that the future of the network will be
the mobile terminal.”

1
SOFTWARE REQUIREMENTS SPECIFICATION :

External Interface Requirements:

 Hardware
The mobile app will be operating on Android and IOS.
 Software
The mobile app will be compatible with the mobile and tablet(Android app) last
versions.
Developer Requirements:
 Hardware specification

• OS : MacOS-64bit and Windows 7 (64bit) or later


• HDD :1.23GB if windows or 2.8GB if Mac OS for Flutter SDK
• RAM :4GB (minimum)
• Processor : Intel i3 3rdgen or AMD equivalent

 Software Specification

• OS : MacOS-64bit and Windows 7 (64bit) or later


• Tools :Flutter SDK
• Android Studio/Visual Studio Code or any other IDE supporting dart
• G it
• Windows Power shell 5.0(only for windows users)

 User Requirements:

• OS : Android Jellybean or newer and IOS 8 or newer


• Hardware : IOS devices (I Phone 4s or newer) and ARM android devices
• Storage Space:~200MB
• RAM : 2GB

2
.SYSTEM CONFIGURATION

3.1 Problem statement:

Whether people love to cook or just love to eat, they have a collection of dishes and
recipes they'd like to try. Maybe they have a bunch handed down from a loved one.
In either case, they certainly need a better method to keep them organized for the
long haul than a bunch of index cards in a file folder, which old and tedious.
Therefore, cooking with your phone is a lot tastier when you have the right recipes.

Adults also reap considerable benefits from eating home-cooked meals. Research
finds that people who eat home-cooked meals on a regular basis tend to be happier
and healthier and consume less sugar and processed foods, which can result in
higher energy levels and better mental health. Eating home-cooked meals five or
more days a week is even associated with a longer life.

1.2 Objectives:

The objective of this project is to develop a “Recited” mobile application to be used


to elevate user kitchen skills, instead of using index cards in a file folder. In other
words,Recited will turn your phone into a pocket souls chef.

1.3 Motivation:

Recited application is a very useful app for people who love to cook and try out
new recipes. It provides user flexibility to search and save recipes from a database
and deleting recipe that are no longer required. This application is a time saver
providing recipes in few clicks. The interface is clean and simple. It makes use of
Flutter containers capability to display options on home screen with image icons.
The user can search recipes, view added favourite recipe list all from home screen.

3
SOFTWARE REQUIREMENTS SPECIFICATION :

External Interface Requirements:

 Hardware
The mobile app will be operating on Android and IOS.
 Software
The mobile app will be compatible with the mobile and tablet(Android app) last
versions.
Developer Requirements:
 Hardware Requirements:

• OS : MacOS-64bit and Windows 7 (64bit) or later


• HDD :1.23GB if windows or 2.8GB if Mac OS for Flutter SDK
• RAM :4GB (minimum)
• Processor : Intel i3 3rdgen or AMD equivalent

 Software Requirements:

• OS : MacOS-64bit and Windows 7 (64bit) or later


• Tools :Flutter SDK
• Android Studio/Visual Studio Code or any other IDE supporting dart
• G it
• Windows Power shell 5.0(only for windows users)

 User Requirements:

• OS : Android Jellybean or newer and IOS 8 or newer


• Hardware : IOS devices (I Phone 4s or newer) and ARM android devices
• Storage Space:~200MB
• RAM : 2GB

4
Non-Functional Requirements:

Non-functional analysis contains about the application analysis of the user's


interest level. In
this section will explain how the application is tested in such a way and get the
user's assessment
of the appropriateness and condition of the application.

• Security:
The data within the application must be protected from tampering.
• Availability:
The application will must available to the user without internet connection at all
times.
• Usability:
It has good UX/UI with elegant design and enough information to allow the user to
fully use the application.
• Performance:
The application must be responsive and should match the refresh-rate of the screen.

Product Requirements:
 Usability Requirements:
 The application shall be easy to use and intuitive.
 The application shall have a user-friendly interface.
 GUI shall be simple and clear.
 Performance Requirements:
 The application shall be fast and robust when loading.
 The program shall not allow more than 10 min/year of failure.
 Space Requirements:
 The application shall have enough memory space in order to store high number of
data.
 Reliability Requirements:
 The application shall not produce an incorrect output.
 Portability Requirements:
 The software shall work in all different platforms.

5
4. SYSTEM ANALYSIS

4.1 Existing System:


Surely there are many recipe apps that offer wide varieties of options to choose
from, but most of them are online only and those that are offline lack either that
multi-tube of options and devoid of proper UX and structure.

The feasibility study, as its name indicates, aims at assessing the practicality of the
proposed project. As stated in the Initial Specifications Report, the objective of this
project is to develop a “Recited” mobile application to be used to elevate user’s
kitchen skills and streamline grocery shopping, instead of using index cards in a file
folder.

4.2 Proposal system:


We are developing an application to help people who are having problems with
internet, while retaining all the features that make an online app great and more
features than some existing ones.
We are using dart and flutter to develop our native app to both IOS, Android, etc...,.
Dart/fitter allows dews to developed native apps for multiple platforms from a
single code base.

4.3 Summary:

The goal of this step is to ensure that the requirements are consistent, precise and
complete to ensure that we meet the final outcome expectations. There are two
types of requirements: functional and non-functional requirements. The functional
requirements are the ones that describes the functions of the app; whereas, the non-
functional requirements are the ones that present the app constraints and properties.

6
5.SYSTEM DESIGN

5.1 System architecture:

Figure1: System architecture

System architecture describes the organization of the system in terms of structure


and behaviour by representing the different components and the relationship
between them. The architecture of this system is composed of a mobile device
(IOS/Android) that allows the users to make use of the application and its different
functionalities of the system.
The Database is part of the application is composed of various lists of dictionaries.
Whenever the user sends a request, the application sends the appropriate parameters
based on the request to List builder that generates appropriate response by making
use of the database.

7
5.2 Use Case Diagrams:

a. Use case diagram for developer:

Figure 2: Use Case Diagram for Developer

8
b. Use case diagram for User:

Figure 3: Use Case Diagram for User

9
5.3 Entity Relationship Diagram:
This flowchart illustrates how “entities” such as Users, objects or concepts relate to
each other within a system. They mirror grammatical structure, with entities as
nouns and relationships as verbs.

Figure 4: Entity Relationship Diagram

10
11
4.5 Android Application Design:
The Android’s user interface is built around Activities which are single focused
thing that a user can do. They are directly related to the functional requirement
defined for the application. Following are the derived, from the user requirements,
activities that should be implemented to fulfil the functional requirements .

Figure 8: Android Activities

12
4.6 Activity Diagram:

This is another important behavioural diagram in UML diagram to describe


dynamic aspects of the system. It is essentially an advanced version of flow chart
that modelling the flow from one activity to another activity.

Figure 9: Activity Diagram

13
4.7 Class Diagram:

Class diagrams are the main building block in object-oriented modelling. They are
used to show the different objects in a system, their attributes, their operations and
the relationships among them. In our example, “recipes” are depicted.

Figure 10: Class Diagram

14
5.IMPLEMENTATION

5.1 Environmental Setup:


1. Setting up ‘Environment’ for application
2. Flutter Setup

System requirements:

To install and run Flutter, your development environment must


meet these minimum requirements:

 Operating Systems: Windows 7 SP1 or later (64-bit), x86-64


based
 Disk Space: 1.32 GB (does not include disk space for IDE/tools).
 Tools: Flutter depends on these tools being available in your
environment.
o Windows Power Shell 5.0 or newer (this is pre-installed with
Windows 10)
o Git for Windows 2.x, with the Use Git from the Windows
Command Prompt option.

If Git for Windows is already installed, make sure you can


run git commands from the command prompt or Power Shell.

Get the Flutter SDK


1. Download the following installation bundle to get the latest stable
release of the Flutter SDK:

flutter_windows_1.22.5-stable.zip

For other release channels, and older builds, see the SDK
releases page.

2. Extract the zip file and place the contained flutter in the desired
installation location for the Flutter SDK (for example, C:\src\
flutter).

Warning: Do not install Flutter in a directory like C:\Program Files\ that


requires elevated privileges.

15
If you don’t want to install a fixed version of the installation
bundle, you can skip steps 1 and 2. Instead, get the source code
from the Flutter repo on Git Hub, and change branches or tags as
needed. For example:

content_ copy

C:\src>git clonehttps://github.com/flutter/flutter.git -b stable


You are now ready to run Flutter commands in the Flutter Console.

Update your path


If you wish to run Flutter commands in the regular Windows
console, take these steps to add Flutter to the PATH environment
variable:

 From the Start search bar, enter ‘env’ and select Edit
environment variables for your account.
 Under User variables check if there is an entry called Path:
o If the entry exists, append the full path to flutter\bin using ; as
a separator from existing values.n
o If the entry doesn’t exist, create a new user variable
named Path with the full path to flutter\bin as its value.

You have to close and reopen any existing console windows for these
changes to take effect.

Note: As of Flutter’s 1.19.0 dev release, the Flutter SDK contains


the dart command alongside the flutter command so that you can more easily
run Dart command-line programs. Downloading the Flutter SDK also downloads
the compatible version of Dart, but if you’ve downloaded the Dart SDK separately,
make sure that the Flutter version of dart is first in your path, as the two versions
might not be compatible. The following command (on macOS, line x, and chrome
OS), tells you whether the flutter and dart commands originate from the
same bin directory and are therefore compatible. (Some versions of Windows
support a similar where command.)

content_copy
$ which flutter dart
/path-to-flutter-sad/bin/flutter
/user/local/bin/dart
As shown above, the two commands don’t come from the same bin directory.
Update your path to use commands
from /path-to-flutter-sad/bin before commands
from /user/local/bin (in this case). After updating your shell for the change
16
to take effect, running which or where command again should show that
the flutter and dart commands now come from the same directory.

Content_copy
$ which flutter dart
/path-to-flutter-sad/bin/flutter
/path-to-flutter-sad/bin/dart
To learn more about the dart command, run dart -h from the command line, or
see the dart tool page.
Run flutter doctor
From a console window that has the Flutter directory in the path
(see above), run the following command to see if there are any
platform dependencies you need to complete the setup:

content_ copy
C:\src\flutter>flutter doctor
This command checks your environment and displays a report of
the status of your Flutter installation. Check the output carefully
for other software you might need to install or further tasks to
perform (shown in bold text).

For example:

Content _ copy
[-] Android tool chain - develop for Android devices
• Android SDK at D:\Android\sdk
✗ Android SDK is missing command line tools; download
from https://goo.gl/XxQghQ
• Try re-installing or updating your Android SDK,
visit https://flutter.dev/setup/#android-setup for
detailed instructions.
The following sections describe how to perform these tasks and
finish the setup process. Once you have installed any missing
dependencies, you can run the flutter doctor command again
to verify that you’ve set everything up correctly.

Note: If flutter doctor returns that either the Flutter plug-in or Dart plug-in
of Android Studio are not installed, move on to Set up an editor to resolve this
issue.
Warning: The flutter tool uses Google Analytics to anonymously report
feature usage statistics and basic crash reports. This data is used to help improve
Flutter tools over time.

Flutter tool analytics are not sent on the very first run. To disable reporting,
type flutter confer --no-analytics. To display the current setting,
17
type flutter confer .If you opt out of analytics, an opt-out event is sent, and
then no further information is sent by the Flutter tool.

By downloading the Flutter SDK, you agree to the Google Terms of Service. Note:
The Google Privacy Policy describes how data is handled in this service.

Moreover, Flutter includes the Dart SDK, which may send usage metrics and crash
reports to Google.

Android setup
Note: Flutter relies on a full installation of Android Studio to supply its Android
platform dependencies. However, you can write your Flutter apps in a number of
editors; a later step discusses that.
Install Android Studio

1. Download and install Android Studio.


2. Start Android Studio, and go through the ‘Android Studio Setup
Wizard’. This installs the latest Android SDK, Android SDK
Command-line Tools, and Android SDK Build-Tools, which are
required by Flutter when developing for Android.

Set up your Android device


To prepare to run and test your Flutter app on an Android device,
you need an Android device running Android 4.1 (API level 16) or
higher.

1. Enable Developer options and USB debugging on your device.


Detailed instructions are available in the Android documentation.
2. Windows-only: Install the Google USB Driver.
3. Using a USB cable, plug your phone into your computer. If
prompted on your device, authorize your computer to access your
device.
4. In the terminal, run the flutter devices command to verify that
Flutter recognizes your connected Android device. By default,
Flutter uses the version of the Android SDK where your adb tool is
based. If you want Flutter to use a different installation of the
Android SDK, you must set the ANDROID_SDK_ROOT environment
variable to that installation directory.

Set up the Android emulator

18
To prepare to run and test your Flutter app on the Android
emulator, follow these steps:

1. Enable VM acceleration on your machine.


2. Launch Android Studio, click the AVD Manager icon, and
select Create Virtual Device…
o In older versions of Android Studio, you should instead
launch Android Studio > Tools > Android > AVD
Manager and select Create Virtual Device….
(The Android submenu is only present when inside an Android
project.)
o If you do not have a project open, you can choose Conferure >
AVD Manager and select Create Virtual Device…
3. Choose a device definition and select Next.
4. Select one or more system images for the Android versions you
want to emulate, and select Next. An x86 or x86_64 image is
recommended.
5. Under Emulated Performance, select Hardware - GLES 2.0 to
enable hardware acceleration.
6. Verify the AVD conferuration is correct, and select Finish.

For details on the above steps, see Managing AVDs.

7. In Android Virtual Device Manager, click Run in the toolbar. The


emulator starts up and displays the default canvas for your
selected OS version and device.

5.2 Module Description:

Application compatible with phones supporting different versions. Further, the


mobile application has many The implementation took roughly three months and
involved coding every single day to finally arrive at the final product. The
implementation was about designing activities, which are similar to pages in web
applications, creating and linking the graphical user interface with the
functionalities. Every time we implemented a functionality, we tested it directly on
the AVD emulator and my android phone so as to get a real life representation of
what the application would look like on our clients’ mobile phones. We also
managed to make the mobile features:

1 .Smart search-filters:

19
Users can search or filter recipes by name-base ingredients and diet. When user
searches for an ingredient, all the related recipes to that ingredient will be shown to
the user and search based on diet is also displayed. For example, some people are
allergic to some ingredients and wish not to include them in their meal So the user
will be able to search the recipe based on diet or other requirement factors.The
search filter will return the appropriate recipes depending on the type of the search .

2. Categorized view:
In our application all recipes are categorized into various cuisine, food types, diets
and varieties. We collected the exclusive authentic recipes of various countries and
their cuisines are categorized on the type of food and the specific diet that the user
is seeking for and varieties.

3. Curated Collections:
We’ve gathered recipes from famous chefs around the world and listed their
signature recipes and collected various information and data about these recipes
from popular website and articles.

4. Pantry Manager:
Every user can manage their own personal pantry with the help of a pantry
manager, which we have included in our application.

5. Meal Planner:
One of the best solutions for busy people to eat better at home is to plan and prep
ahead. Preparing nutritious and delicious meals at home is especially critical these
days when eating out and food shopping are more challenging. For many people, it
can be hard to get started.So, our Meal planner feature enables the user to plan their
meal ahead of time or occasional dishes for special events and set a remainder with
meal planner
20
6. Shopping list:
We have also given a feature where the user can add ingredients into the shopping
list. So that the user can track all the missing ingredients and purchase them all at
once later when he/she visits for a grocery shopping.These shopping list feature
take out all the work for you, whether you want to share a virtual list with your
family and friends, or check out the nutrition facts for whatever you're buying.It can
be used and created by more than just a cell phone, as some apps can integrate with
smartwatches.

7. Skill Guide and Glossary:


Under the skill guide and glossary section, we’ll provide the user with various
information on cooking techniques. Like knife skills, etc. and including a
‘Dictionary’ to understand common culinary terminology. This section is basically
dedicated to the starters who does not have experience and match knowledge in
cooking.

Friendly and flexible GUI

My app has a friendly and flexible Graphical User Interface. I have used Picasso as
an image loader. Also, I made sure that every single layout is scrollable. I have used
“Photoshop” as a soft ware to design the buttons, layouts and “Text views”
backgrounds.

21
• View Recipe

Figure 11: User viewing the recipe

The user shall be able to see the recipes in the application. In other words, the user
shall be able to access the Recipe Forum, where all the user’s recipes are posted and
ordered by date of creation. Our application allows user to view recipe list with
images and title. Single recipe can be viewed with images, recipe title, and details
cooking directions.

Figure 12: Viewing the name of the recipe

22
• Search for a Recipe
Any registered user shall able to search for a recipe using the title as a criterion. The
search functionality will provide the users with a shortcut to find their targeted
recipes if posted before by the users.

• View Ingredients
The user of the app shall be able to view ingredients of a certain recipe. This option
will allow him/her to mark those ingredients as needed, and ultimately find them in
the shopping list.

Figure 13: Ingredients of the above recipe

Figure 14: User adding the recipe as his/her favourite

23
• Add Recipe as Favourite
Once the user accesses the recipe information, he/she shall be able to mark a recipe
as favourite. Our application allows user to save recipe as favourite. When user
performs search operation, result is list of recipes. Each recipe in list has favourite
button on it. User can add recipe by clicking on favourite button. Heart in Figure 31
is to add to favourite button.

• View My Favourite Recipes


The user shall be able to access the recipes that he/she marked as favourite .

Figure 15: User can view his /her favourite recipe

5.3 Software Description:

The choice of technology enablers that will be used for the development of the
application is essential for its success. The technology enablers should provide a
suitable way to fulfil the requirements stated before. Principles of enterprise class
applications should be kept in mind during the choice of these technologies. The
two main ones are that there is no best technology but instead suitable ones and that
we shouldn’t reinvent the wheel which means that we should take advantage on
what was already implemented and offered to the community.

ANDROID STUDIO:
• Android Studio is Android's official IDE. It is purpose built for Android to
accelerate your development and help you build the highest-quality apps for every
Android device. It offers tools custom-tailored for Android developers, including
24
rich code editing, debugging, testing, and profiling tools. I have selected Android
Studio for the following reasons:
• Instant Run: When you click Run or Debug, Android Studio's Instant Run feature
pushes code and resource changes to your running app. It intelligently understands
the changes and often delivers them without restarting your app or rebuilding your
APK, so you can see the effects immediately.
Intelligent Code Editor:The code editor helps you write better code, work faster,
and be more productive by offering advanced code completion, refactoring, and
code analysis.
• Optimized For All Android Devices: Android Studio provides a unified
environment where you can build apps for Android phones, tablets, Android Wear,
Android TV, and Android Auto. Structured code modules allow you to divide your
project into units of functionality that you can independently build, test, and debug .

Android Virtual Device (AVD)

• AVD emulator that can be used instead of the Android device. In somecases, it's as
good as or better than developing on actual devices.

Notepad++
• Notepad++ is a free source code editor and Notepad replacement that supports
several languages.

25
5.4 SIMPLE CODE
List Mexican = [
{
"serves"; "2",
"prepTime": "5min",
"cookTime": "10min",
"asset"; "assets/countries/blackbeansalad.jpeg",
"name": "Mexican Black Bean Salad",
"items":
"1 cup (200g) fresh corn kernels, or frozen corn kernels\n2 large corn tortillas\n2
tablespo
"process":
"1. Preheat the oven grill to high. Boil the kettle. Place corn in a heatproof bowl and
pour
"serves": "10",
"prepTime": "35min",
"cookTime": "5min",
"asset": "assets/countries/tacos.jpg",
"name":"Crispy Fish Tacos with Mango Salsa",
"items":
1/3 cup (50g) plain flour\n1 teaspoon smoked paprika (pimenton)\n1 teaspoon
ground cumin\na
"process":

26
"1.Combine flour and spices in a bowl and season. Place the egg and breadcrumbs
in separate
"serves": "4",
"prepTime": "10min",
"cookTime": "10min",
"asset": "assets/countries/chillitacos.jpg",
"name": Chilli Chicken Tacos With Green Goddess Mayo",
"items":
"6 (770g) Lilydale Free Range Chicken Thigh, trimmed\n1 cup (250ml) buttermilk\
n2% tsp smoked
"process":
"1.Place chicken, buttermilk and spices in a non-reactive bowl, cover and chill for 4
hours
flutterVersionName = '1.0'
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

android {
compileSdkVersion28

sourceSets{
main.java.srcDirs += 'src/main/kotlin'
}

lintOptions{
disable 'InvalidPackage'
}
defaultConfer{
27
// TODO: Specify your own unique Application ID
(https://developer.android.com/studio/build/application-id.html).
applicationId"com.hollsinthesun.cookbook"
minSdkVersion16
targetSdkVersion28
versionCodeflutterVersionCode.toInteger()
versionNameflutterVersionName
}
buildTypes{
release {
// TODO: Add your own signing confer for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfersigningConfers.debug
}
}
: release {
// TODO: Add your own signing confer for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfersigningConfers.debug
}
}
flutter {
source '../..'
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version";

Code for build grade


import 'package:flutter/material.dart';
28
import 'package:flutter_test/flutter_test.dart';

import 'package:cookbook/main.dart';

void main() {
testWidgets('Counter increments smoke test', (WidgetTester tester) async{
// Build our app and trigger a frame.
await tester.pumpWidget(CookBook());

// Verify that our counter starts at 0.


expect(find.text('0'), findsOneWidget);
expect(find.text('1'), findsNothing);

// Tap the '+' icon and trigger a frame.


await tester.tap(find.byIcon(Icons.add));
await tester.pump();

code for widget_test.dart


<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="android" name="Android">
<conferuration>
<option name="ALLOW_USER_CONFERURATION" value="false" />
<option name="MANIFEST_FILE_RELATIVE_PATH"
value="/app/src/main/AndroidManifest.xml" />
<option name="RES_FOLDER_RELATIVE_PATH" value="/app/src/main/res" />
<option name="ASSETS_FOLDER_RELATIVE_PATH"
value="/app/src/main/assets" />

29
<option name="LIBS_FOLDER_RELATIVE_PATH"
value="/app/src/main/libs" />
<option name="PROGUARD_LOGS_FOLDER_RELATIVE_PATH"
value="/app/src/main/proguard_logs" />
</conferuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolderurl="file://$MODULE_DIR$/app/src/main/java"
isTestSource="false" />
<sourceFolderurl="file://$MODULE_DIR$/app/src/main/kotlin"
isTestSource="false" />
<sourceFolderurl="file://$MODULE_DIR$/gen" isTestSource="false"
generated="true" />
</content>
<orderEntrytype="jdk" jdkName="Android API 25 Platform" jdkType="Android
SDK" />
<orderEntrytype="sourceFolder" forTests="false" />
<orderEntrytype="library" name="Flutter for Android" level="project" />
<orderEntrytype="library" name="KotlinJavaRuntime" level="project" />
</component>
</module>
Code for griddle android app

import 'package:cookbook/Pages/HomePage.dart';
import 'package:flutter/material.dart';

void main() {
runApp(CookBook());
30
}

class CookBookextends StatelessWidget {


@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: "Recite",
theme: ThemeData.light(),
home: HomePage(),
);
}
}

code for lib main.dart


{
"serves": "4",
"prepTime": "10 minutes",
"cookTime": "45 minutes",
"asset": "assets/chefs/vikas/khubani.jpeg",
"name": "KhubanikaShahiTukda",
"items":
"For the rabdi:\n3 cups whole milk\n1/2 cup sugar
\n1/4 tsp green cardamom powder\n
For the shahitukda:\n1 cup granulated sugar\n1
cup whole milk\nGhee, for deep frying\n
1/4 tsp saffron strands\n4 slices white bread\n
100 gms dried apricots, soaked overnight and drained
\n2 Tbsp pistachios, finely chopped\n2 sheets edible silver/gold leaf (Optional)",
31
"process":
"For the rabdi:\n1.Heat milk in a kadhai (wok) over medium heat and bring to a
boil.
Lower the heat and cook, stirring continuously,
till it thickens to a consistency of a custard sauce.\n2.
Remove from heat,
add sugar and cardamom powder and stir till sugar dissolves. \n
The mixture will thicken on cooling.\nFor the shahitukda:\n1
.Combine the sugar with 2 cups water in a saucepan and cook over medium heat,
stirring till sugar dissolves and the syrup thickens to one-string consistency.\n2.
Add the drained apricots to the syrup and cook till tender.
\nRemove apricots from syrup and set aside
.\n3.In another saucepan, combine the milk with saffron and prepared sugar syrup
(The syrup in which the apricots were cooked) and simmer for 5 to 7 minutes. \n
Remove from heat and keep warm.\n4.Heat the clarified butter in a kadhai over
medium heat,
and deep fry the bread slices till golden and crisp. \nRemove and drain on absorbent
paper.
\n5.Soak the fried bread slices in the warm milk for 2 minutes.
\n6.Sandwich the cooked apricots between the softened bread.\n7.
To serve, arrange the sweet apricot sandwiches on a plate and spoon rabdi over.
Sprinkle over with pistachios and garnish with silver leaf.\n8.Serve warm."
},
{
"serves": "4",
"prepTime": "10 minutes",
"cookTime": " 20 minutes",
"asset": "assets/chefs/vikas/kacche.jpeg",
"name": "KaccheKelekiAsharfi Recipe",
"items":
32
"2 Tbsp oil\n2 large onions, finely sliced\n6 unripe green bananas,
},
{
"serves": "2",
"prepTime": "0",
"cookTime": "30 minutes",
"asset": "assets/chefs/vikas/breakfast.jpeg",
"name": "French Breakfast Radish with Mustard Dressing",
"items":
"1 Small Baguette\n6 oz Fingerling Potatoes\n3 oz French Breakfast Radishes\n1
Fennel Bulb With Fronds\n1 head Butter Lettuce\n1 large bunch Mint\n1 Shallot\
n1 Tbsp Red Wine Vinegar\n1 Tbsp Whole Grain Mustard\n¼ cup Red Quinoa\n4 oz
Goat Cheese",
"process":
"1Cook the quinoa:\nPreheat the oven to 450°F. Heat 2 medium pots of salted
water to boiling on high. Once the first pot of water is boiling, add the
quinoa. \nCook 14 to 16 minutes, or until tender. \nDrain thoroughly and
transfer to a large bowl. Set aside.\nPrepare the ingredients:\n2Prepare the
ingredients:\nWhile the quinoa cooks, wash and dry the fresh produce. \nCut
the baguette in half horizontally, then crosswise on an angle. \nCut off and
discard the root end of the lettuce; separate the leaves. \nCut the potatoes
into ½-inch-thick rounds. Trim off and discard the stem ends of the radishes;
\ncut the radishes into bite-sized wedges. Cut off and discard the fennel
stems and fronds; \nthinly slice the bulb. Pick the mint leaves off the stems;
discard the stems. \nPeel and mince the shallot to get 2 tablespoons of minced
shallot (you may have extra); \nplace the minced shallot in a medium bowl with
the vinegar.\nCook the potatoes:\n3Cook the potatoes:\nAdd the potatoes to the
second pot of boiling water. \nCook 8 to 10 minutes, or until tender when
pierced with a fork. \nRemove from heat. Thoroughly drain the potatoes and set
aside to cool slightly.\nMake the dressing:\n4Make the dressing:\nWhile the
potatoes cook, add the mustard to the shallot-vinegar mixture. \nSlowly whisk
in 2 tablespoons of olive oil until well combined; \nseason with salt and
pepper to taste. \nSet aside.\nMake the goat cheese toast:\n5Make the goat
cheese toast:\nWhile the potatoes continue to cook, place the baguette pieces
on a sheet pan, cut sides up. \nDrizzle with olive oil and season with salt
and pepper. Toast in the oven 6 to 8 minutes, or until golden brown. \nRemove
from the oven and set aside to cool slightly. \nWhen cool enough to handle,
spread the goat cheese onto the toasted baguette pieces. \nDrizzle with olive
oil and season with salt and pepper to taste.\nFinish& plate your dish:\
n6Finish & plate your dish:\nTo the bowl of cooked quinoa, add the cooked
potatoes, radishes, fennel, lettuce and mint; \nseason with salt and pepper.
Add enough of the dressing to coat the salad (you may have extra dressing); \
ntoss to thoroughly combine and season with salt and pepper to taste. \nDivide
the finished salad between 2 plates. \nServe with the goat cheese toast on the
side. \nEnjoy!",
}
];
Code for Chefs Curated

33
Result for above code in android app
List Indian = [
{
"serves": "6",
"prepTime": "2 hours 45 mins",
"cookTime": "45 mins",
"asset": "assets/countries/indian/dum.jpg",
"name": "Hyderabadi dum biriyani",
"items":
"For Chicken Marination:\n11/2 kg chicken cut into large pieces\n2 tbsp ginger
garlic paste\n2 tbsp red chilli powder\n1 tsp turmeric powder\nsalt as per
taste\n1 bunch coriander leaves\n1 bunch mint leaves\n7 - 8 green chillies\n1
tsp caraway seeds shahi zeera\n3 - 4 cloves loung\n2 cinnamon sticks dalchini\
n3 - 4 cardamoms elaichi\n3 - 4 black pepper corns kali mirch\n2 cups fried
golden brown onions\n2 cups yogurt\n1 tbsp oil\n1 tbsp lemon juice\ntspgaram
masala powder\nFor the Rice:\nWater for boiling\n1 kg basmati rice\n2-3 cloves
loung\n1 cinnamon stick dalchini\n2-3 cardamoms elaichi\n1 tsp caraway seeds
shahi zeera\n2 - 3 black pepper corns kali mirch\n1 tbsp lemon juice\nsalt -
to taste\nFor Dum Seasoning:\n2 tbsp oil\n2 tbsp coriander leaves\n2 tbsp mint
leaves\n2 tbsp fried onions\n1 tbsp lemon juice\n1 cup saffron flavored milk\
n1 tbsp ghee\n1 cup water\nFor Garnishing:\nFried onions",
"process":
"For The Chicken Marination:\nWash the chicken pieces well with lemon juice
and water and strain the chicken completely.\nAdd ginger garlic paste into
it.\nAdd red chilli powder, turmeric powder, salt and mix well.\nIn a blender
add a bunch of coriander leaves, a bunch of mint leaves, green chillies, add a
pinch of salt and make the paste called as green paste or hara masala paste.\
nAdd the green paste to the chicken marinade.\nAdd whole garam masala that is
cardamom, cinnamon, cloves, black pepper corns, caraway seeds.\nMix the whole
mixture well.\nCrush the onions and add into the marinade.\nAdd beaten yogurt
and mix well.\nAdd oil over the marinade and mix well.\nAddgaram masala powder
and lemon juice and mix well.\nCheck the taste of salt and add if required.\
nRest this marinade inside the refrigerator for about 45 mins to 1 hour.\
nProcedure To Cook The Rice:\nFirstly, wash the basmati rice and soak it for
34
about 35 mins.\nTake a cooking pot, add water generously into it.\nInto the
water, add salt as per taste, cinnamon stick, cloves, shahi zeera, black
pepper corns, cardamoms.\nBring the water to a boil.\nWhen the water starts
boiling, add the soaked rice into it.\nCook the rice for about 6 - 7 mins
until it is three fourth done.\nStrain the rice completely and rest the
strained rice aside.\nProcedure To Give The Dum:\nIn a cooking pot, to the
base add oil and spill it all over the base.\nAdd the chicken marinade into it
and spread it evenly.\nAdd the rice which has been cooked into it.\nSpread the
rice evenly all over the marinade.\nSeason the rice with coriander leaves,
mint leaves, fried onions.\nAdd lemon juice all over the rice.\nAdd saffron
flavored milk(2 saffron strands added into the 1/4th cup of milk to get orange
red color).\nAdd ghee into it.\nAdd little water all over the rice(optional).\
nMake a chapathi dough and seal the lid and the cooking pot tightly with the
dough.\nSwitch on the flame, put the cooking pot onto the flame.\nDum the
biryani on sim flame for about 45 mins."
},
{
"serves": "4",
"prepTime": "10 mins",
"cookTime": "25 mins",
"asset": "assets/countries/indian/Chicken_makhani.jpg",
"name": "Chicken Makhani (Indian Butter Chicken)",
"items":
"1 tablespoon peanut oil\n1 shallot, finely chopped\n¼ white onion, chopped\n2
tablespoons butter\n2 teaspoons lemon juice\n1 tablespoon ginger garlic paste\
n1 teaspoon garam masala\n1 teaspoon chili powder\n1 teaspoon ground cumin\n1
bay leaf\n¼ cup plain yogurt\n1 cup half-and-half\n1 cup tomato puree\n¼
teaspoon cayenne pepper, or to taste\n1 pinch salt\n1 pinch black pepper\n1
tablespoon peanut oil\n1 pound boneless, skinless chicken thighs, cut into
bite-size pieces\n1 teaspoon garam masala\n1 pinch cayenne pepper\n1
tablespoon cornstarch\n¼ cup water",
"process":
"Step 1\nHeat 1 tablespoon oil in a large saucepan over medium high heat.
Sauter shallot and onion until soft and translucent. Stir in butter, lemon
juice, ginger-garlic paste, 1 teaspoon garam masala, chili powder, cumin and
bay leaf. Cook, stirring, for 1 minute. Add tomato sauce, and cook for 2 mins,
stirring frequently. Stir in half-and-half and yogurt. Reduce heat to low, and
simmer for 10 mins, stirring frequently. Season with salt pepper. Remove from
heat and set aside.\nStep 2\nHeat 1 tablespoon oil in a large heavy skillet
over medium heat. Cook chicken until lightly browned, about 10 mins. Reduce
heat, and season with 1 teaspoon garam masala and cayenne. Stir in a few
spoonfuls of sauce, and simmer until liquid has reduced, and chicken is no
longer pink. Stir cooked chicken into sauce.\nStep 3\nMix together cornstarch
and water, then stir into the sauce. Cook for 5 to 10 mins, or until
thickened."
},
{
"serves": "3",
"prepTime": "10 mins",
"cookTime": "30 mins",
"asset": "assets/countries/indian/bisibela.jpg",
"name": "Bisi Bela Bath",
"items":
"BISI BELE BATH MASALA:\n4 tsp coriander seeds\n4 tsp chana dal\n2 tsp urad
dal\n1 tsp jeera / cumin\n¼ tsp methi / fenugreek seeds\n½ tsp pepper\n3 pods
cardamom / each\n1 inch cinnamon / dalchini\n4 cloves / lavang\n2 tbsp dry
coconut / copra\n2 tsp poppy seeds / khuskhus\n1 tsp sesame seeds / til\n1 tsp
oil\n12 dried kashmiri red chilli\nfew curry leaves\npinch of hing /
asafoetida\nOTHER INGRIDENTS:\n½ carrot, chopped\n5 beans, chopped\n2
tbspmatar / peas\n½ potato / aloo, cubed\n2 tbsp peanuts\n2 cups water\n¼ tsp
turmeric / haldi\n1½ tsp salt\n¾ cup tamarind extract\n½ tsp jaggery / gud\n½
onions, petals\n1 cup toor dal, cooked\n2½ cup rice, cooked\n1 cup water\n1
tbsp ghee / clarified butter",
"process":
35
"firstly, cook vegetables, 2 tbsp peanuts, 2 cups water, ¼ tsp turmeric and 1
tsp salt.\nnow add ¾ cup tamarind extract, ½ tsp jaggery and ½ onions. boil
for 10 mins.\nfurther add 1 cup of cooked toor dal, 2½ cup of cooked rice and
1 cup water.\nadd 4 tsp of bisibisibele bath masala and simmer for 20 mins.\
npour the tempering and serve bisibele bath with boodi or mixture."
},
{
"serves": "4",
"prepTime": "10 mins",
"cookTime": "30 mins",
"asset": "assets/countries/indian/matar.jpg",
"name": "Matar Paneer",
"items":
"FOR ONION TOMATO PASTE:\n2 tbsp oil\n1 onion, sliced\n3 clove garlic,
chopped\n1 inch ginger\n3 tomato, sliced\nOTHER INGREDIENTS:\n2 tbsp oil\n1
bay leaf\n1 inch cinnamon stick\n2 pods cardamom\n1 tsp cumin / jeera\n¼ tsp
turmeric\n1 tsp kashmiri red chilli powder\n1 tbspbesan / gram flour\n¼ tsp
cumin powder\n1 tsp coriander powder\n1 tsp salt\n1 cup water\n1 cup peas /
matar\n12 cubes paneer / cottage cheese\n2 tbsp coriander, finely chopped\n¼
tsp garam masala\n1 tsp kasurimethi",
"process":
"in a large kadai heat 2 tbsp oil and saute spices.\nadd ¼ tsp turmeric, 1 tsp
chilli powder and 1 tbspbesan. roast well.\nadd in prepared onion tomato paste
and saute well.\nfurther add ¼ tsp cumin powder, 1 tsp coriander powder and 1
tsp salt.\nnow add 1 cup water and stir well.\nadd in 1 cup peas and stir
well. cover and cook for 10 mins.\nadd in 12 cubes paneer and simmer for 10
mins.\nnow add 2 tbsp coriander, ¼ tsp garam masala and 1 tsp kasurimethi.\
nfinally, enjoy matar paneer with roti or rice."
},
{
"serves": "",
"prepTime": "15 mins",
"cookTime": "40 mins",
"asset": "assets/countries/indian/Tandoori-Chicken.jpg",
"name": "Tandoori chicken",
"items":
"3 Tbsp vegetable oil\n1 teaspoon ground coriander\n1 teaspoon ground cumin\n1
teaspoon ground turmeric\n1 teaspoon cayenne\n1 Tbsp garam masala\n1 Tbsp
sweet (not hot) paprika\n1 cup plain yogurt (can sub buttermilk)\n2 Tbsp lemon
juice\n4 minced garlic cloves\n2 Tbsp minced fresh ginger\n1 teaspoon salt\n4
whole chicken legs (drumsticks and thighs), or its equivalent, skinless, bone-
in",
"process":
"1 Heat the spices in oil: Heat the oil in a small pan over medium heat, then
cook the coriander, cumin, turmeric, cayenne, garam masala and paprika,
stirring often, until fragrant (approximately 2-3 mins). Let cool completely.\
n2 Whisk spices into yogurt, add lemon juice, garlic, salt, ginger: Whisk the
cooled spice-oil mixture into the yogurt, then mix in the lemon juice, garlic,
salt and ginger.\n3 Cut deep slashes into chicken, coat with marinade, chill:
Cut deep slashes (to the bone) in 3-4 places on the leg/thigh pieces. Just
make 2-3 cuts if you are using separate drumsticks and thighs. Coat the
chicken in the marinade, cover and chill for at least an hour (preferably 6
hours), no more than 8 hours.\n4 Prepare grill: Prepare your grill so that one
side is quite hot over direct heat, the other side cooler, not over direct
heat. If using charcoal, leave one side of the grill without coals, so you
have a hot side and a cooler side. If you are using a gas grill, just turn on
one-half of the burners.\nUse tongs to wipe the grill grates with a paper
towel soaked in vegetable oil.\n5 Shake off excess marinade, place chicken on
hot side of grill: Take the chicken out of the marinade and shake off the
excess. You want the chicken coated, but not gloppy.\nPut the chicken pieces
on the hot side of the grill and cover. Cook 2-3 mins before checking.\nTurn
the chicken so it is brown (even a little bit charred) on all sides\n6 Move to
cool side of grill, cover and cook: Move chicken to the cool side of the
grill. Cover and cook for at least 20 mins, up to 40 mins (or longer)
36
depending on the size of the chicken and the temperature of the grill. The
chicken is done when its juices run clear.\nLet it rest for at least 5 mins
before serving. It’s also great at room temperature or even cold the next
day.\nServe with naan, and Indian flatbread, or with Indian style rice, with
yogurt-based raita on the side."
},
{
"serves": "6",
"prepTime": "20 mins",
"cookTime": "45 mins",
"asset": "assets/countries/indian/masala_dosa.jpeg",
"name": "Masala Dosa",
"items":
"FOR BATTER:\n3 cup sonamasuri rice\n½ tsp methi / fenugreek seeds\nwater, for
soaking\n1 cup urad dal\n2 tbsptoor dal\n2 tbspchana dal\n1 cup poha /
avalakki, rinsed\nFOR ALOO BHAJI:\n2 tbsp oil\n1 tsp mustard\n1 tsp urad dal\
n1 tsp chana dal\n1 dried red chilli\nfew curry leaves\npinchhing /
asafoetida\n2 chilli, finely chopped\n1 inch ginger, finely chopped\n1 onion,
sliced\n¼ tsp turmeric\n1 tsp salt\n3 potato, boiled & mashed\n2 tbsp
coriander, finely chopped\n2 tbsp lemon juice",
"process":
"MASALA DOSA BATTER PREPARATION:\nfirstly, in a large bowl take 3 cup
sonamasuri rice and ½ tsp methi.\nrinse well and soak in enough water for 4
hours.\nin another bowl take 1 cup urad dal, 2 tbsptoor dal and 2 tbspchana
dal.\nrinse well and soak in enough water for 2 hours.\nafter soaking dal for
2 hours, drain off the water and transfer to the grinder. you can also grind
in mixi if you do not have access to a grinder.\nadd water as required and
blend to smooth paste.\nscrape sides. the smooth and fluffy batter will be
ready after 40 mins.\ntransfer the batter to a large vessel and keep aside.\
nin the same grinder add soaked rice and 1 cup rinsed poha.\nadd water slowly
and scrape the sides. blend to a coarse paste.\ntransfer the rice batter to
the same urad dal batter.\nmix well making sure everything is well combined.\
nferment in a warm place for at least 8 hours or until the batter doubles in
volume. if you are leaving in a cold climate, then you can place the batter in
the warm oven (just heat the oven until it turns slightly warm and then turn
off) to ferment.\nonce the batter is well fermented, mix gently, without
disturbing the air pockets.\ntransfer 4 cups of fermented batter to a small
bowl and add 1 tsp salt.\nmix well until the salt is well combined. masala
dosa batter is ready. keep aside.\nALOO BHAJI PREPARATION:\nfirstly, in a
large kadai heat 2 tbsp oil and splutter 1 tsp mustard, 1 tsp urad dal, 1 tsp
chana dal, 1 dried red chilli, few curry leaves, pinch hing.\nnow add 2 chilli
and 1 inch ginger. saute well.\nalso, add 1 onion and saute until onions
shrink slightly.\nfurther, add ¼ tsp turmeric and 1 tsp salt. saute well.\nnow
add 3 potato and mix well, mash slightly making sure everything is well
combined.\nturn off the flame and add 2 tbsp coriander and 2 tbsp lemon
juice.\nmix well and aloo bhaji for masala dosa is ready. keep aside.\nMASALA
DOSA PREPARATION:\nfirstly, add a ladleful of batter on hot tawa.\nspread as
thin as possible making a crispy dosa.\ntake 1 tsp of butter and spread
uniformly.\nalso, place 2 tbsp of prepared aloo masala in the centre.\nroast
until the dosa turns golden brown and crisp.\nscrape the sides of dosa and
roll the dosa.\nfinally, masala dosa recipe is ready to serve with coconut
chutney and sambar."
},
{
"serves": "6",
"prepTime": "10 mins",
"cookTime": "45 mins",
"asset": "assets/countries/indian/rogan-josh.jpg",
"name": "Rogan Josh",
"items":
"1 Kg meat\n1 cup mustard/refined oil\n3 tsp red chili powder\n3 tsp fennel
powder\n2 tsp ginger powder\n2 tsp cumin powder\n3 tsp brown cardamom powder\
n1 tsp asafoetida\n4 Green cardamom\n2 Cinnamon sticks\n2 Bay leaves\n2
Cloves\n1/3 tsp saffron (optional)\n1 cup curd\nA pinch of salt",
37
"process":
"1.Wash the meat properly. Heat oil in a pressure cooker.\n2.Put cinnamon, bay
leaves, green cardamom, cloves, a teaspoon of salt, asafoetida, and meat
together.\n3.Fry meat till it turns brown. Once browned, pour a cup of water.\
n4.Add the red chili powder and saffron into the meat. Keep stirring for about
a minute.\n5.Mix the curd nicely in the mixer and pour it into the pressure
cooker.\n6.Keep on stirring till you get a reddish tinge.\n7.Add 2 cups of
water, fennel powder, ginger powder, and pressure cook for 2 mins.\n8.Check if
the meat is tender. Peel and grind green and brown cardamom and add to the
meat dish.\n9.Finally sprinkle cumin powder and simmer for a minute and
serve."
},
{
"serves": "2",
"prepTime": "5 mins",
"cookTime": "20 mins",
"asset": "assets/countries/indian/ven-pongal.jpg",
"name": "Pongal",
"items":
"FOR PRESSURE COOKING:\n1 tsp ghee / clarified butter\n½ cup rice, rinsed\n½
cup moong dal, rinsed\n4 cup water\n½ tsp salt\nFOR TEMPERING:\n2 tbsp ghee /
clarified butter\n1 tsp cumin / jeera\n½ tsp pepper, crushed\n1 inch ginger,
finely chopped\n2 chilli, slit\n10 cashew / kaju, halves\npinchhing /
asafoetida",
"process":
"firstly, in a pressure cooker heat 1 tsp ghee.\nadd ½ cup rice, ½ cup moong
dal and saute for a minute or until it turns aromatic.\nfurther, add 4 cup
water and ½ tsp salt. mix well.\ncover and pressure cook for 5 whistles on
medium flame.\nonce the pressure settles down, open the cooker and give a good
mix.\nfurthermore, in a pan heat 2 tbsp ghee.\nalso add 1 tsp cumin, ½ tsp
pepper, 1 inch ginger, 2 chilli, 10 cashew and pinch hing.\nsaute on low flame
until cashew turns golden brown.\npour the tempering over cooked rice and dal
mixture.\ngive a good mix, add more ghee if required.\nfinally, serve
venpongal/kharapongal with coconut chutney and sambar."
},
{
"serves": "21 pieces",
"prepTime": "30 mins",
"cookTime": "12 mins",
"asset": "assets/countries/indian/Dhokla.png",
"name": "Dhokla",
"items":
"FOR RAVA DHOKLA:\n1 cup rava / bombayrava / semolina / sooji\n1 cup thick
curd / yogurt, slightly sour\n½ tsp sugar\n1 tsp ginger / adrak, grated\n1 tsp
chili paste\n2 tsp oil\nsalt to taste\n¼ cup water, or as required\n1 tsp eno
fruit salt or ¾ tsp baking soda\nFOR TEMPERING:\n2 tsp oil\n1 tsp mustard
seeds / rai\n½ tsp jeera / cumin seeds\n½ tsp sesame seeds / til\npinch of
hing / asafoetida\nfew curry leaves\n2 green chili, slit\n2 tbsp coriander
leaves, finely chopped",
"process":
" firstly, in a large mixing bowl take rava and curd.\nadditionally add sugar,
ginger, chili paste and salt.\nmix well to form a thick batter.\nrest for 30
mins or till rava absorbs moisture.\nfurther add water as required and mix
well.\nget the dhokla to idli batter consistency.\nadditionally add eno fruit
salt.\nmix gently till the batter turns frothy.\ntransfer to the greased
plate.\nsteam the dhokla batter for 12 mins.\nprepare the tempering by heating
oil.\nfurther add mustard seeds, jeera, sesame seeds and hing.\nonce the
mustard seeds splutter add in curry leaves and green chili.\nsaute for a while
and once the tempering splutters spread the tempering over dhokla.\nalso
sprinkle coriander leaves.\nand cut the dhokla to desired shape.\nfinally
serve soft and spongy ravadhokla with green chutney."
},
{
"serves": "4 to 5",
38
"prepTime": "10 mins",
"cookTime": "45 mins",
"asset": "assets/countries/indian/chettinad.jpg",
"name": "Chettinad Fish Curry",
"items": "Fish – 1/2 kg ( We used Paarai fish) \nOil – 1 tblspn\nMustard Seeds
"
"/ Kaduku – 1 tsp\nOnion – 1 small chopped finely\nTomato – 1 large
cut into long slices\nCurry Leaves a sprig\nCoriander Leaves – 2 tblspn finely
chopped\nTamarind Pulp – 3 tblspn\nForSauteing and Grinding:\nOil – 1 tblspn\
nFennel Seeds / Saunf / Sombu – 1 tblspn\nOnions – 1 large sliced\nGarlic
Paste – 1 tblspn\nTomato – 1 large chopped\nChilli Powder – 1 tblspn or to
taste\nCoriander Powder – 2 tblspn\nTurmeric Powder / ManjalPodi – 1 tsp\
nCoconut – 1/2 cup grated",
"process":
"Heat oil in a earthernwarekadai. Add in fennel seeds and saute it for a min.\
nAdd in onions and saute for a min. Add in garlic and saute for 30 sec. Add in
tomatoes and saute well.\nAdd in spice powders and saute for a min. Add in
coconut and mix well. Take that in blender and puree it well. \nNow in the
same kadai, add in oil and heat it. Add in mustard seeds and crackle it.\nAdd
in onions and curry leaves. Saute till is golden.\nAdd in coconut masala and
mix well. Cook till oil separates. Add in the long sliced tomatoes and toss
well.\nAdd in tamarind pulp and some water. Mix it well and bring it to boil.
\nAdd in fish pieces and mix well. Season with salt.\nSimmer this for 8 to 10
mins till the fish is done. Add in coriander leaves and mix well.\nServe with
rice.."
}
];

6.SYSTEM TESTING
6.1 Tests:
The app development will consist of five parts. The first part will be devoted to data
gathering and software requirements specification. Consequently, I will have a look
at different mobile apps which target the same goal. They are plenty of Recipe
Organizer apps. Each one has some various features.

The second part will be dedicated to the design phase, including the app and the
database. Also, in this phase, the software tools to be used will be specified. For
example, the IDE, the database, the modelling language for the design, and finally
the software testing tools. The third part will be the implementation phase, here, the
39
design will be converted to code in order to develop the targeted app. The fourth
step will be devoted to testing the app. In this phase, two testing methods will be
used, namely: Black Box testing and White box testing. The last phase will be the
deployment phase.

40
7.RESULTSCREEN SHORTS

Figure 16: App interface (i)

• Recipes are categorized in the form


of cuisines (based on countries and origin).
• Fast food items are categorized into
Burgers, Pizza, Noodles and Sausages.
• We have also collected the signature dishes of
some of the world-famous chefs under Chefs Curated category.
• We have a category named ‘Meals’, where further divided into 6 categories:
- Lunch
- Breakfast
- Dessert
- Dinner
- Salad
- Soups
• We also have a special Category. Here, the user specific recipes are collected. For instance
collection of vegan recipes are included.

41
Figure 18: App interface (iii)

42
Figure 19: App interface (iv)

43
Figure 20: App interface (v)

44
Figure 21: App interface (vi)

45
46
Figure 22: App interface (vii)

8.

CONCLUSION

The Recetté application meets with the enterprise class application principles. It is
designed to be performing, scalable, extensible and highly available. Given that it
may be improved in many ways, the application is also easily maintainable.

This document summarizes the work that has been done since the beginning of this
semester. Indeed, it starts by giving an overview about the project specification and
requirements.
47
The document also states the methodology followed and which consists of 5 main
parts:
The first part will be devoted to data gathering and software requirements
specification. Consequently, I will have a look at different mobile apps which target
the same goal. They are plenty of Cookbook apps. Each one has some various
features.

The second part will be dedicated to the design phase, including the app and the
database. Also, in this phase, the software tools to be used will be specified. For
example, the IDE, the modelling language for the design, and finally the software
testing tools.

The third part will be the implementation phase, here, the design will be converted
to code in order to develop the targeted app.The last phase will be the deployment
phase.

48
9.BIBLIOGRAPHY

1. flutter_svg | Flutter Package (pub.dev)


2. Recipes | Recipes for Breakfast, Lunch & Dinner (delicious.com.au)
3. Meal and Recipe Finder: cooking instructions to bake healthy food (allthemeals.com)
4. Cookbook - Flutter

49

You might also like