Malathi Webproject
Malathi Webproject
R ENGINEERING COLLEGE
(An Autonomous Institution, Affiliated to Anna University, Chennai)
SIVAKASI-626 140
M.MALATHI
(Reg .No 95192201050)
November 2024
1
BONAFIDE CERTIFICATE
Certified that this mini project report “NOURISH NOTE BOOK APPLICATION”
is the bonafide work of M.MALATHI (REG.NO 95192201050), who carried out the project
work under my supervision.
SIGNATURE SIGNATURE
Sivakasi-626140. Sivakasi-626140.
2
ACKNOWLEDEMENT
We take this opportunity to all those who helped towards successful completion of this
mini project. At the very outset we thank the almighty for his profuse blessings showered on us.
We thank our beloved parents whose encouragement and support help us to complete our project
successfully.
It is our greatest privilege to convey our thanks to Dr.J.S.Senthil kumaar M.E., Ph.D.,
Principal for continuous support to complete our project without hurdles.
M.E., Ph.D., Professor for providing ample facilities to complete our project successfully.
Mrs.P. Gopalsamy , M.E., Assistant Professor for having helped us in all aspects.
We also bound to thanks to all Faulty and Non-teaching staff members of the Department
of Computer Science and Engineering whose support and cooperation also contributed much
to complete this project work.
3
ABSTRACT
4
TABLE OF CONTENT
2.3 OBJECTIVES
8
3 SYSTEM REQUIREMENTS
INTRODUCTION
6
• The app includes features such as recipe categorization, meal planning,
reminders, and notifications.
OBJECTIVES:
7
CHAPTER 3
SYSEM REQUIREMENTS
8
CHAPTER 4
MODULES
9
CHAPTER 5 IMPLEMENTATION
The system uses React for the front end to provide a responsive
interface. The backend is developed with Node.js and Express, while
MongoDB serves as the database for storing user profiles, recipes,
and categories. Firebase is integrated for notification management,
enabling timely alerts for users.
10
Results Analysis:
11
SOURCE CODE:
INDEX .HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Recipe Book Application</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<!-- Header -->
<header>
<h1>My Recipe Book</h1>
<input type="text" id="search" placeholder="Search recipes..."
onkeyup="searchRecipe()">
</header>
<script src="script.js"></script>
</body>
12
</html>
styles.css:
/* Reset */ * { margin:
0; padding: 0; box-
sizing: border-box;
}
header { text-align:
center; margin-
bottom: 20px;
}
h1 { color:
#ff6347;
}
#search {
padding: 10px;
width: 80%;
margin-top: 10px;
}
section { width:
100%; max-width:
600px; margin-
bottom: 30px;
}
form {
display: flex; flex-
direction: column;
}
13
input, textarea, button {
margin-bottom: 10px;
padding: 10px; font-size:
1rem;
}
button { background-color:
#ff6347; color: white;
border: none; cursor:
pointer;
}
button:hover { background-
color: #ff4500;
}
#recipes { display:
flex; flex-direction:
column;
}
.recipe-card { background-
color: #fff; border-radius:
8px; padding: 15px;
margin-bottom: 15px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.recipe-card h3 {
color: #333;
}
.recipe-card p { margin-
top: 5px;
}
14
script.js:
// Array to store recipes let
recipes = [];
recipeCard.innerHTML = `
<h3>${recipe.name}</h3>
<p><strong>Ingredients:</strong> ${recipe.ingredients.join(', ')}</p>
<p><strong>Instructions:</strong> ${recipe.instructions}</p>
<button onclick="deleteRecipe(${index})">Delete</button>
15
`;
recipesDiv.appendChild(recipeCard);
});
}
displayFilteredRecipes(filteredRecipes);
}
recipeCard.innerHTML = `
<h3>${recipe.name}</h3>
<p><strong>Ingredients:</strong> ${recipe.ingredients.join(', ')}</p>
<p><strong>Instructions:</strong> ${recipe.instructions}</p>
<button onclick="deleteRecipe(${index})">Delete</button>
`;
recipesDiv.appendChild(recipeCard);
});
}
17
CHAPTER 6
CONCLUSION
18
CHAPTER 7 REFERENCES
19
20 21