Project Report
Project Report
INDEX
S.No. Contents Page No.
1. INTRODUCTION 1
Page |
INTRODUCTION
Welcome to "Cakes N Shapes," your destination for a seamless and delightful cake-shopping
experience. Our website is designed to simplify your journey, offering a diverse selection,
transparent information, and a secure checkout process. With every click, you're one step closer
to finding the perfect cake for your celebration. Explore our wide array of flavours, designs, and
sizes tailored to your preferences, ensuring there's something for everyone. We pride ourselves
on quality and customer satisfaction, promising a hassle-free experience from start to finish.
Our user-friendly interface makes navigating through our offerings effortless, allowing you to
find your dream cake with ease. At "Cakes N Shapes," we believe every celebration deserves a
centre piece as sweet as the memories made. Trust in us to make your special day extraordinary,
one delectable slice at a time. Join our community of satisfied customers who have made us
their go- to destination for all things cake-related. Welcome to the world of "Cakes N Shapes,"
Page |
CAKES N
SYSTEM STUDY
DEFINITION OF SYSTEM
Social and economic factor: A wave of social and economic changes often follows in the
wake of the new technology. New opportunities may arise to improve on a production process
or to do something that was not previously possible. Changes in the ways individuals are
organized into groups may then be necessary, and the new groups may complete for economic
resources with established units.
Technological factor: People have never before in a time when the scope of scientific inquiry
was so broad, so when the speed of applying the new technology accounts for many changes
in the organization.
Proposed System:
The development of this new system contains the following activities, which try to develop on-
line application by keeping the entire process in the view of database integration approach.
Classical instruments are also available in product list.
We also provided additional information about different instruments, their
components, and related parts .
Page |
CAKES N
Page |
CAKES N
The examining technical feasibility configuration of the system is given more importance than
the actual make of hardware. The configuration should give the complete picture about the
system’s requirement. The existing computer system property supports this software. This
software to implement this company (bike shop) does not require additional resource. Hence it
can be concluded that the proposed system is technically feasible.
Page |
CAKES N
3) What new skills will be required Do the existing members have these skills?
If not can they be trained in due course of time? It also includes social and managerial aspects
that are whether the proposed project will be acceptable to the customer and the management,
along with the determination of whether the proposed project considers Act, Status as well as
pending Legislations as a part of the legal feasibility People always resist Change. Any user
staff finds it uneasy to switch over man managed system to computer managed system due to
lack of computer knowledge.
The proposed system is quite:
User friendly
Interactive
The user need not require any profound technical knowledge or skill to use the
System.
By the above discussion, we conclude that, the proposed system considered in all aspects i.e.
economically, technically and behaviourally feasible.
4) OPERATIONAL FEASIBILITY:
This system can be implemented anywhere, as there is an adequate support for the user. With
minimum training the user can get familiar with it and can get better results. The system is easy
to operate so it is operationally feasible.
This feasibility test asks if the system will work when it is developed and installed. Operational
feasibility in this project:
The proposed system offers greater level of user-friendliness.
The proposed system produces best results and gives high performance. It can
be implemented easily. So this project is operationally feasible.
Page |
CAKES N
SYSTEM SPECIFICATION
HARDWARE REQUIREMENTS (Minimum Requirement)
Minimum RAM:-2GB
Hard Disk:-128 GB
Processor:- Intel(R) Core(TM) i3 or equivalent
Keyboard:- Qwerty Keyboard
Monitor:- VGA, Color & LCD, LED
Code Editor/IDE: Software like Visual Studio Code, Sublime Text, or WebStorm for
writing and editing React code.
Node.js: To run JavaScript on the server and use npm (Node Package Manager) for
managing packages and dependencies.
React Developer Tools: Browser extensions like React DevTools for Chrome and
Firefox to inspect and debug React components.
Package Managers: npm or Yarn for managing JavaScript packages and
dependencies.
Routing: React Router for handling client-side routing.
Database: Software like MongoDB for data storage.
Page |
CAKES N
Frontend
HTML (Hypertext Mark up Language):
1. Responsibilities:
2. Basic Layout:
1. Responsibilities:
2. Styling Capabilities:
Selectors: CSS selectors help target specific HTML elements for styling.
Box Model: Defines how elements are rendered as boxes, including properties
like margin, padding, border, and width/height.
Flexbox and Grid: Layout models that allow flexible and responsive design.
Color Properties: CSS provides properties for defining colors, including hex
codes, RGB values, and named colors.
Font Properties: Specify font styles, sizes, and families for text.
Page |
CAKES N
JavaScript:
1. Responsibilities:
2. Event Handling:
React.js:
1. Declarative:
What You Want, Not How to Achieve It: React encourages a declarative
programming paradigm. Instead of imperatively defining how the UI should
update, you declare what the UI should look like, and React takes care of
updating the actual DOM efficiently.
2. Component-Based Architecture:
Unidirectional Data Binding: React follows a one-way data flow, where data
changes in a parent component are passed down to child components through
props. This unidirectional flow enhances the predictability of how data changes
propagate through the application.
Syntax Extension: JSX is a syntax extension for JavaScript that allows you to
write HTML-like code within JavaScript. It provides a more concise and
readable way to define UI components.
Page |
CAKES N
5. State Management:
Local Component State: React components can have local state, which allows
them to manage and update their own data.
React Developer Tools: Browser extensions and tools that facilitate debugging
and inspecting React component hierarchies.
Page |
CAKES N
Backend
1. Node.js:
A JavaScript runtime that allows you to execute server-side code using
JavaScript.
Provides an event-driven, non-blocking I/O model for building scalable and
efficient server-side applications.
Enables the use of JavaScript for both frontend and backend development,
promoting code reuse and consistency.
2. Express.js:
A minimal and flexible Node.js web application framework.
Simplifies the process of building robust and scalable web applications.
Provides middleware to handle various aspects of the HTTP request-response
cycle.
Facilitates the creation of RESTful APIs and routing.
Database:
1. MongoDB:
A NoSQL database that stores data in BSON (Binary JSON) format.
Scales horizontally, making it suitable for handling large volumes of
unstructured data.
Provides flexibility in data modeling, allowing you to work with dynamic
schemas.
Supports document-oriented storage, making it well-suited for JSON-like data
structures.
Additional Components (Optional):
1. Package Managers:
npm (Node Package Manager): Manages and installs Node.js packages and
dependencies for your project.
2. Version Control:
Git: Tracks changes in your codebase, facilitating collaboration and version
control
Page |
CAKES N
SYSTEM ANALYSIS
SYSTEM ANALYSIS
System analysis is a process of gathering and interpreting facts, diagnosing problems
and the information to recommend improvements on the system. It is a problem solving
activity that requires intensive communication between the system users and system
developers. System analysis or study is an important phase of any system development
process. The system is studied to the minutest detail and analyzed. System analysis
report captures your understanding of the requirements, and how you plan to address
them. This document is used to capture the agreement between you and your customer
of what will be built. It is also intended to be a useful reference for your project team.
Here in the digital signage project a detailed study of existing system is carried along
With all the steps in the system analysis. In the manual system for displaying the require
Information one person must be sitting in front of the system to display the information.
It was introduced by De Macro (1978), Gane and Sarson (1979). A data flow diagram
(DFD) is a graphical representation of the "flow" of data through an information system.
DFDs can also be used for the visualization of data processing (structured design).
On a DFD, data items flow from an external data source or an internal data store to an
internal data store or an external data sink, via an internal process.
A DFD provides no information about the timing or ordering of processes, or about
whether processes will operate in sequence or in parallel. It is therefore quite different
from a flowchart, which shows the flow of control through an algorithm, allowing a
reader to determine what operations will be performed, in what order, and under what
circumstances, but not what kinds of data will be input to and output from the system,
nor where the data will come from and go to, nowhere the data will be stored (all of
which are shown on 2 DFD).
DFDs help system designers and others during initial analysis stages visualize a current
system or one that may be necessary to meet new requirements. Systems analysts prefer
working with DFDs, particularly when they require a clear understanding of the
boundary between existing systems and postulated systems. DFDs represent the
following:
1. External devices sending and receiving data
2. Processes that change that data
3. Data flows themselves
4. Data storage locations
Page |
CAKES N
LEVELS OF DFD:
DFDs can range from simple overviews to complex, granular representations of a system or
process with multiple levels, starting with level 0. The most common and intuitive DFDs are
level 0 DFDs, also called context diagrams. They’re digestible, high-level overviews of the
flow of information through a system or process, so almost anyone can understand it.
This DFD level focuses on high-level system processes or functions and the data
sources that flow to or from them. Level 0 diagrams are designed to be simple,
straightforward overviews of a process or system.
While level 1 DFDs are still broad overviews of a system or process, they’re also
more detailed — they break down the system’s single process node into sub
processes.
The next level of DFDs dive even deeper into detail by breaking down each level 1
process into granular sub-processes.
Page |
CAKES N
Level 3 and higher-numbered DFDs are uncommon. This is largely due to the amount
of detail required, which defeats its original purpose of being easy to understand.
Page |
CAKES N
ER (Entity-Relationship) Diagram
An ER diagram shows the relationship among entity sets. An entity set is a group of similar
entities and these entities can have attributes. In terms of DBMS, an entity is a table or attribute
of a table in database, so by showing relationship among tables and their attributes, ER diagram
shows the complete logical structure of a database. Let’s have a look at a simple ER diagram
to understand this concept.
Here are the geometric shapes and their meaning in an E-R Diagram.
1. Rectangle- Represents entity sets.
2. Ellipses- It represent attributes.
3. Diamonds- It represents relationship set.
4. Lines- They link attributes to entity sets and entity sets to relationship sets.
Page |
CAKES N
1. Table Login
2. Table Signup
3. Table Contact
Page |
CAKES N
4. Table Registration
5. Table Order:-
Page |
CAKES N
SYSTEM DESIGN
System Design is the most creative and challenging phase in the system life cycle. Design is
the first step into the development phase for any engineered product or system. Design is a
creative process. A good design is the key to effective system. System design is a solution how
to approach the creation of a new system. System design transforms a logic representation of
what is required to do into the physical specification. The specification is converted into
physical reality during development.
LOGICAL DESIGN
The logical flow of a system and define the boundaries of a system. It includes the following
steps:
Reviews the current physical system – its data flows, file content,
volumes, frequencies etc. |
Prepares output specifications — that is, determines the format, content and
frequency of reports.
Prepares input specifications — format, content and most of the input
functions.
Prepares edit, security and control specifications.
Specifies the implementation plan.
Prepares a logical design walk through of the information flow, output, input,
controls and implementation plan.
Reviews benefits, costs, target dates and system constraints.
PHYSICAL DESIGN
Physical system produces the working systems by define the design specifications that tell the
programmers exactly what the candidate system must do. It includes the following steps:
Page |
CAKES N
DESIGN/SPECIFICTION ACTIVITIES
Concept formulation.
Problem understanding.
High level requirements proposals.
Feasibility study.
Requirements engineering.
Architectural design
INPUT DESIGN
Input Design deals with what data should be given as input, how the data should be arranged
or code, the dialog to guide the operating personnel in providing input, methods for preparing
input validations and steps to follow when error occur. Input Design is the process of
converting a user-oriented description of the input into a computer-based system. This design
is important to avoid errors in the data input process and show the correct direction to the
management for getting correct information from the computerized system. It is achieved by
creating user-friendly screens for the data entry to handle large volume of data. The goal of
designing input is to make data entry easier and to be free from errors. The data entry screen is
designed in such a way that all the data manipulates can be performed. It also provides record
viewing facilities.
When the data is entered it will check for its validity. Data can be entered with the help of
screens. Appropriate messages are provided as when needed so that the user will not be in
maize of instant. Thus the objective of input design is to create an input layout that is easy to
follow. In this system, for inputting user data, attractive forms are designed. User can also
select the desired options from the menu, which provide all possible facilities. Also the
important input format is designed in such a way that the accidental errors are avoided. The
user has to input only just the minimum data required, which also helps in avoiding the errors
that the users may make. Accurate designing of the input format is very important in developing
efficient software. The goal of input design is to make entry as easy, logical and free from
errors,
OUTPUT DESIGN
A quality output is one, which meets the requirements of the end user and presents the
information clearly. The objective of output design is to convey information about past
Page |
CAKES N
activities, current status or projections of the future, signal important events, opportunities,
problems, or warnings, trigger an action, confirm an action etc. Efficient, intelligible output
design should improve the system’s relationship with the user and helps in decisions making.
In output design the emphasis is on displaying the output on a CRT screen in a predefined
format. The primary consideration in design of output is the information requirement and
objectives of the end users. The major formation of the output is to convey the information and
so its layout and design need a careful consideration.
As the outputs are the most important source of information source of information to the user,
better design should improve the system’s relation and also should help in decision-making.
The output device’s capability, print quality, response time requirements etc. should also be
considered, form design calborates the way output is presented and layout available for
capturing information. It’s very helpful to produce the clear, accurate and speedy information
for end users.
DATABASE DESIGN
A database is an organized mechanism that has the capability of storing information through
which a user can retrieve stored information in an effective and efficient manner. The data is
the purpose of any database and must be protected. The general theme behind a database is to
handle information as an integrated whole. A database is a collection of inter related data store
with minimum redundancy to serve many user quickly and efficiently. After designing the
input and output the analyst must concentrate on database design or how data should be
organized around user requirements. The general objective is to make information access, easy,
quick, inexpensive and flexible for the users.
The database design involves creation of tables. Tables are represented in physical database as
stored files. They have their own independent existence. A table consists of rows and columns.
Each column corresponds to a piece of information called field. A set of fields constitutes a
record. The record contains all the information, specific to a particular item.
During database design the following objectives are concerned:
1. Controlled redundancy.
2. Easy to learn and use.
3. More information and low cost.
4. Accuracy.
5. Integrity.
Page |
CAKES N
PROJECT CODE
FrontEnd Files
INDEX.HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/logo192.png" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta name="Cakes N Shapes" content="Cakes N Shapes />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Protest+Revolution&display=swap"
rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?
family=Dancing+Script&family=Protest+Revolutio n&family=Single+Day&display=swap"
rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?
family=Dancing+Script&family=Protest+Revolutio n&display=swap" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"
rel="stylesheet" integrity="sha384-
T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN"
crossorigin="anonymous"/>
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<link rel="stylesheet" href="../src/componenet/flaticon.css"/>
<link rel="stylesheet" href="../src/componenet/font.css" />
<title>Cakes N Shapes</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"
integrity="sha384-
C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL"
crossorigin="anonymous"></script>
Page |
CAKES N
</body>
</html>
INDEX.JS
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode>
<App />
</React.StrictMode>
);
reportWebVitals();
APP.JS
import React from 'react'
import { BrowserRouter, Route, Routes, useLocation } from 'react-router-dom'
import NavBar from './componenet/navBar/navBar'
import Footer from './componenet/footer/Footer'
import HomePage from './componenet/Home.jsx'
import Shopping_cart from './componenet/cart/ShoppingCart.jsx'
import About from './componenet/About/About.jsx'
import Shop from './componenet/Shop/Shop.jsx'
import Contact from './componenet/Contact/Contact.jsx'
import Home1 from './componenet/Home/Home1.jsx'
import {CakePro} from './componenet/Shop/Product.jsx'
import {CupCakePro} from './componenet/Shop/Product.jsx'
import {BreadPro} from './componenet/Shop/Product.jsx'
import { CookiesPro } from './componenet/Shop/Product.jsx'
import { RollsPro } from './componenet/Shop/Product.jsx'
import { DonutPro } from './componenet/Shop/Product.jsx'
import Login from './componenet/Login/Login1.jsx'
import SignUp from './componenet/Login/Signup.jsx'
import CheckOut from './componenet/Check Out/CheckOut.jsx'
import {AdminPannel} from './componenet/Adminpannel/AdminPannel.jsx'
import ContactTable from './componenet/Adminpannel/ContactTable.jsx'
import SignInTable from './componenet/Adminpannel/SignInTable.jsx'
import OrderTable from './componenet/Adminpannel/OrderTable.jsx'
import ClassRegTable from './componenet/Adminpannel/ClassRegTable.jsx'
Page |
CAKES N
import './App.css';
function Layout() {
const location = useLocation()
return (
<>
{location.pathname !== '/' && location.pathname !== '/Login' && location.pathname !==
'/Signup' && <NavBar />}
<Routes>
<Route path="/" element={<Home1 />} />
<Route path="/Login" element={<Login />} />
<Route path="/SignUp" element={<SignUp />} />
<Route path="/HomePage" element={<HomePage />} />
<Route path="/Shop" element={<Shop />} />
<Route path="/Shopping" element={<Shopping_cart />} />
<Route path="/About" element={<About />} />
<Route path="/Contact" element={<Contact />} />
<Route path="/CakePro" element={<CakePro />} />
<Route path="/CupCakePro" element={<CupCakePro />} />
<Route path="/BreadPro" element={<BreadPro />} />
<Route path="/DonutPro" element={<DonutPro />} />
<Route path="/CookiesPro" element={<CookiesPro />} />
<Route path="/RollsPro" element={<RollsPro />} />
<Route path="/AdminPannel" element={<AdminPannel />} />
<Route path="/CheckOut" element={<CheckOut />} />
<Route path="/ContactTable" element={<ContactTable />} />
<Route path="/SignInTable" element={<SignInTable />} />
<Route path="/OrderTable" element={<OrderTable />} />
<Route path="/ClassRegTable" element={<ClassRegTable />} />
</Routes>
{location.pathname !== '/' && location.pathname !== '/Login' && location.pathname !==
'/Signup' && <Footer />}
</>
)
}
function App() {
return (
<BrowserRouter>
<Layout />
</BrowserRouter>
)
}
Page |
CAKES N
return (
<div className="cont">
<div className="content">
<div className="square twitch" style={{ marginBottom: "50px" }}>
<span className="one"></span>
<span className="two"></span>
<span className="three"></span>
<div className="circle">
<h4 className="DrugRadar">Healthy Made Delicious Cake </h4>
<p>One-stop Fro Your All Bakery Needs</p>
</div>
</div>
Page |
CAKES N
function Login1(){
const history=useNavigate();
const [email,setEmail]=useState('')
const [password,setPassword]=useState('')
async function submit(e){
e.preventDefault();
try{
await axios.post("http://localhost:8000/",{
email,password
})
.then(res=>{ if(res.data=
="exist"){
history("/HomePage",{state:{id:email}})
}
else if(res.data=="notexist"){
alert("User have not sign up")
}
})
.catch(e=>{ alert("wron
g details")
console.log(e);
})
}
catch(e){
console.log(e);
}
}
return (
<>
Page |
CAKES N
<div class="col-lg-6"></div>
<div class=" d-flex align-items-center justify-content-center right-side login" >
<div class="form-2-wrapper2">
<div class=" text-center">
<h1 className='heading ' >Login</h1>
</div>
<h2 class="text-center ">Sign Into Your Account</h2>
<form action="#">
<div class="mb-3 form-box">
<input type="email" class="form-control1" id="email" onChange={(e) => {
setEmail(e.target.value) }} name="email" placeholder="Enter Your Email" required />
</div>
<div class="mb-3">
<input type="password" class="form-control1" id="password" onChange={(e) => {
setPassword(e.target.value) }} name="password" placeholder="Enter Your Password"
required />
</div>
<button type="submit" class="btn btn-outline-secondary login-btn w-100 "
onClick={submit}>Login</button>
</form>
<p class="text-center register-test mt-3">Don't have an account?
<Link to="/Signup" class="button" target="_parent">
<span class="actual-text"> Register here </span>
</Link></p>
</div>
</div>
</div>
</div>
</>
);
Page |
CAKES N
Page |
CAKES N
</div>
<h2 class="text-center ">Sign Into Your Account</h2>
<form action="#">
<div class="mb-3">
<input type="text" class="form-control2" id="text" onChange={(e) => {
setName(e.target.value) }} name="text" placeholder="Enter Your Name" required />
</div>
<div class="mb-3 form-box">
<input type="email" class="form-control2" id="email" onChange={(e) => {
setEmail(e.target.value) }} name="email" placeholder="Enter Your Email" required />
</div>
<div class="mb-3">
<input type="password" class="form-control2" id="password" onChange={(e) =>
{ setPassword(e.target.value) }} name="password" placeholder="Enter Your Password"
required />
</div>
<button type="submit" class="btn btn-outline-secondary login-btn w-100 "
onClick={submit}>Login</button>
</form>
<p class="text-center register-test mt-3">Hav already an account
<Link to="/Login" class="button" target="_parent">
<span class="actual-text"> Login here </span>
</Link></p>
</div>
</div>
</div>
</div>
</>
);
}
Page |
CAKES N
<Icon_slider />
<Slider />
<About_bar />
<Class_sec />
</>
);
}
export default Home;
import '../font.css';
import './navBar.css';
import logo from '../../images/logo/logo.jpg';
import { useNavigate } from 'react-router-dom';
import React from 'react';
function NavBar() {
const navigate = useNavigate();
return (
<>
<nav>
<div className="container-fluid header body-bg sticky-top">
<div className="row">
<div className="col-xl-12">
<div className="d-flex justify-content-between flex-wrap align-items-
center">
<div className="header-info-left d-none d-sm-block">
<ul className="header-social">
<li><a href="#"><i className="fab fa-facebook"></i></a></li>
<li><a href="https://www.instagram.com/_cakes.n.shapes"><i
className="fab fa-instagram"></i></a></li>
<li><a href="#"><i className="fab fa-twitter"></i></a></li>
<li><a onClick={() => navigate("/AdminPannel")}><i
className="fa fa-user "></i></a></li>
</ul>
</div>
<div className="logo">
<a href="index-2.html"><img className='logo' src={logo} alt="sorry"
/></a>
</div>
<div className="header-info-right d-none d-lg-block hover-underline-
animation">
Page |
CAKES N
Footer :- Footer.jsx
import './Footer.css';
import '../font.css';
import Foot_logo from '../../images/footer-logo.png'
const Footer = () => {
return (
Page |
CAKES N
<>
<footer class="footer set-bg" >
<div class="container">
<div class="row">
<div class="col-lg-4 col-md-6 col-sm-6">
<div class="footer widget">
<h3>WORKING HOURS</h3>
<ul>
<li>Monday - Friday: 08:00 am – 08:30 pm</li>
<li>Saturday: 10:00 am – 16:30 pm</li>
<li>Sunday: 10:00 am – 16:30 pm</li>
</ul>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-6">
<div class="footer about">
<div class="footer logo">
<a href="#"><img src={Foot_logo} alt="" /></a>
</div>
<p>Freshly baked is the assorted variety of breads,cakes,cupcakes,donut
we bring for you to savour. Prepared with the finest ingredient</p>
<div className='footer-info-left'>
<ul className="footer-social">
<li><a href="#"><i className="fab fa-facebook"></i></a></li>
<li><a href="https://www.instagram.com/_cakes.n.shapes"><i
className="fab fa-instagram"></i></a></li>
<li><a href=""><i className="fab fa-twitter"></i></a></li>
</ul>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-6">
<div class="footer newslatter">
<h3>Subscribe</h3>
<p>Get latest updates and offers.</p>
<form action="#">
<input type="text" placeholder="Email" />
<button type="submit"><i class="fa fa-send-o"></i></button>
</form>
</div>
</div>
</div>
</div>
</footer>
</>
);
}
export default Footer;
Page |
CAKES N
Page |
CAKES N
Page |
CAKES N
const carouselData = [
{ id: 1, content: <span className="flaticon-034-chocolate-roll"></span> ,name:"Choco-
roll" ,pro: "/RollsPro"},
{ id: 2, content: <span className="flaticon-029-cupcake-3"></span> ,name:"Cupcake"
,pro: "/CupCakePro"},
{ id: 3, content: <span className="flaticon-043-cake-7"></span> ,name:"Cakes" , pro:
"/CakePro"},
{ id: 3, content: <span className="flaticon-042-candies"></span> ,name:"Cookies" ,pro:
"/CookiesPro"},
{ id: 4, content: <span className="flaticon-023-doughnut"></span> ,name:"Donut", pro:
"/DonutPro"},
{ id: 5, content: <span className="flaticon-002-cake-14"></span> ,name:"bread", pro:
"/BreadPro"},
// Add more slides as needed
Page |
CAKES N
];
const handleNext = () => {
sliderRef.current.slickNext();
};
const handlePrev = () => {
sliderRef.current.slickPrev();
};
return (
<>
<div className="categories">
<div className="container">
<div className="row">
<div className="categories slider owl-carousel">
Product :- Slider.jsx
import './slider.css';
import React, { useState } from 'react';
import Shop_cart from '../cart/data';
import items1 from '../../images/shop/product-1.jpg'
import items2 from '../../images/shop/bread/caterpillar.webp'
import items3 from '../../images/shop/CHOCO TRUFFLE CAKE.jpg'
Page |
CAKES N
Page |
CAKES N
{ id: 4, image:items4, item: ' rolls ' ,title: 'Choco rolls', price: 150, quantity:1 },
{ id: 5, image:items5, item: ' Cake ' ,title: 'Rasmalai Cake(1 KG)', price: 600, quantity:1 },
{ id: 6, image:items6, item: ' Donut ' ,title: 'Kit Kat Donut', price: 60, quantity:1 },
];
return (<>
<div className="conatiner-fluid body-bg">
<div className="conatainer main">
<div className="row">
{cakeData.map((cake) => (
<CakeCard key={cake.id} {...cake} />
))}
</div>
</div>
</div>
</> );
};
export default Slider;
Page |
CAKES N
console.log(e);
})
}
catch(e){
console.log(e);
}
}
return (
<>
<section className="class spad">
<div className="container">
<div className="row">
<div className="col-lg-6 col-md-12 col-sm-12">
<div className="class form">
<div className="section-title">
<span>Class cakes</span>
<h2>Made from your <br />own hands</h2>
</div>
<form action="#">
<input type="text" placeholder="Name" onChange={(e) => {
setName(e.target.value) }} />
<input type="text" placeholder="Phone" onChange={(e) => {
setPhone(e.target.value) }}/>
<input type="text" placeholder="Type your requirements example
Cake" onChange={(e) => { setRequirement(e.target.value) }}/>
<button type="submit" className="site-btn"
onClick={submit}>registration</button>
</form>
</div>
</div>
<div className="col-lg-6 col-md-12 col-sm-12">
<div className="class video ">
<a href="https://www.youtube.com/watch?
v=8PJ3_p7VqHw&list=RD8PJ3_p7VqHw&start_rad io=1" className="play-btn video-
popup"><i className="fa fa-play"></i></a>
</div>
</div>
</div>
</div>
</section>
</>
)
}
export default Class_sec;
Page |
CAKES N
Page |
CAKES N
Page |
CAKES N
Page |
CAKES N
const [email,setEmail]=useState('')
const [message,setMessage]=useState('')
await axios.post("http://localhost:8000/Contact",{
name,email,message
})
.then(res=>{ if(res.data=
="exist"){
alert("User already exists")
}
else if(res.data=="notexist"){
}
})
.catch(e=>{ alert("wron
g details")
console.log(e);
})
}
catch(e){
console.log(e);
}
}
return (
<>
<div className="container-fluid Contact Page Header Contact_Header_img py-
5 mb-5">
<div className="container py-5">
<h1 className="display-2 text-white">Contact Us</h1>
</div>
</div>
<section class="contact">
<div class="container">
<div class="map">
<div class="map iframe">
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!
1d2309.7807257160957! 2d73.00818474759387!3d26.2797077042173!2m3!1f0!2f0!3f0!3m2!
1i1024!2i768!4f13.1!3 m3!1m2!1s0x39418c315d7a13c3%3A0x14687525b0e90559!2s218%2C
%202nd%2C%20B
%20Rd%2C%20Gandhi%20Maidan%2C%20Sardarpura%2C%20Jodhpur%2C%20Rajastha
Page |
CAKES N
n%20342001!5e0!3m2!1sen!2sin!4v1707480480266!5m2!1sen!2sin"height="300"
width={'100%'} allowfullscreen="" aria-hidden="false" tabindex="0"></iframe>
</div>
</div>
<div class="contact__address">
<div class="row">
<div class="col-lg-4 col-md-6 col-sm-6">
<div class="contact address item">
<h6>Sardarpura</h6>
<ul>
<li>
<i class="fa fa-location-arrow"></i>
<p>218 , 2nd B-road, Sardarpura, jodhpur</p>
</li>
<li>
<i class="fa fa-phone" aria-hidden="true"></i>
<p>+91 734-208-2148</p>
</li>
<li>
<i class="fa fa-envelope" aria-hidden="true"></i>
<p>[email protected]</p>
</li>
</ul>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-6">
<div class="contact address item">
<h6>Housing Board</h6>
<ul>
<li>
<i class="fa fa-location-arrow"></i>
<p>765 ,Sector 9 ,chopasani housing board, jodhpur</p>
</li>
<li><i class="fa fa-phone" aria-hidden="true"></i>
<p>+91 213-612-3000</p>
</li>
<li><i class="fa fa-envelope" aria-hidden="true"></i>
<p>[email protected]</p>
</li>
</ul>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-6">
<div class="contact address item">
Page |
CAKES N
<h6>Paota</h6>
<ul>
<li>
<i class="fa fa-location-arrow"></i>
<p>26 ,C-road, Paota,jodhpur</p>
</li>
<li><i class="fa fa-phone" aria-hidden="true"></i>
<p>+91 800-786-1098</p>
</li>
<li><i class="fa fa-envelope" aria-hidden="true"></i>
<p>[email protected]</p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-4">
<div class="contact text">
<h3>Contact With us</h3>
<ul>
<li>Representatives or Advisors are available:</li>
<li>Mon-Fri: 5:00am to 9:00pm</li>
<li>Sat-Sun: 6:00am to 9:00pm</li>
</ul>
<img src="images/cake-piece.png" alt=""/>
</div>
</div>
<div class="col-lg-8">
<div class="contact form">
<form action="#" >
<div class="row">
<div class="col-lg-6">
<input type="text" placeholder="Name" name = "name"
onChange={(e) => { setName(e.target.value) }}/>
</div>
<div class="col-lg-6">
<input type="text" placeholder="Email" name='email'
onChange={(e) => { setEmail(e.target.value) }}/>
</div>
<div class="col-lg-12 pb-5">
<textarea placeholder="Message" name='message'
onChange={(e) => { setMessage(e.target.value) }} ></textarea>
Page |
CAKES N
// Now The Cake Page Where All The Products Are Shown
Page |
CAKES N
<Bread />
<Cookies />
<Donut />
<Rolls />
</div>
</div>
</>
);
}
export default Shop;
Cake.jsx
CakeCard.jsx
import './Shop.css'
import React, { useState } from 'react';
import Shop_cart from '../cart/data'function CakeCard({ id, image, item, title, price, quantity
}) {
const [data, setData] = useState(Shop_cart);
function Add_to_cart({ id }, { image }, { title }, { price }, { quantity }) {
const existingItem = data.find((item) => item.id === id);
if (!existingItem) {
const newData = [...data, { id, image, title, price, quantity }]
setData(newData);
Page |
CAKES N
</div>
</div>
</div>
</>)
}
export { CakeCard, Shop_cart };
Page |
CAKES N
<div className='container'>
<div className="container-fluid About__Page Header About_Main_Img text-white" >
<div className="container-fluid About Page__Header page-header py-5 mb-5">
<div className="container py-5">
<h1 className="display-2 text-white"> Our Products</h1>
</div>
</div>
</div>
<Icon_slider />
<Cake />
</div>
</>
)
};
//Same Functions are created for CupCake ,Donut, Rolls, Bread ,Cookie
export { CakePro, CupCakePro, BreadPro, DonutPro, CookiesPro, RollsPro };
//Same type of arrays are created for CupCake ,Donut, Rolls, Bread ,Cookie
ShopData.jsx
const CakeData = [
{ id: 1, image: cake1, item: ' CAKE ' ,title: 'Black Forest Cake (1 KG)', price: '549 ' ,
quantity:1},
{ id: 2, image: cake2, item: ' CAKE ' ,title: 'Pineapple Cake (1 KG)', price: '650 ', quantity:1
},
{ id: 3, image: cake3, item: ' CAKE ' ,title: 'Choco Truffle Cake (1 KG)', price: '600 ',
quantity:1 },
{ id: 4, image: cake4, item: ' CAKE ' ,title: 'Fruit N Nut Cake (1/2 KG)', price: '300 ',
quantity:1 },
{ id: 5, image: cake5, item: ' CAKE ' ,title: 'Rasmali Cake (1/2 KG)', price: '400 ', quantity:1
},
{ id: 6, image: cake6, item: ' CAKE ' ,title: 'Double Choco Chip Cake (1/2 KG)', price: '350
', quantity:1 ,},
];
export {CakeData, CupCakeData, BreadData,DonutData, CookiesData ,RollsData};
Page |
CAKES N
Page |
CAKES N
Page |
CAKES N
</div>
</div>
</div>
<div className="row">
<div className="col-lg-6 col-md-6 col-sm-6">
<div className="continue btn">
<a className="continue btn" onClick={() =>
navigate("/Shop")}>Continue Shopping</a>
</div>
</div>
<div className="col-lg-6 col-md-6 col-sm-6">
<div className="continue btn update btn">
<a onClick={clearCart}> clear cart</a>
</div>
</div>
</div>
</div>
<div className="col-lg-4">
<div className="cart total">
<h3>Cart total</h3>
<ul>
<li>Total Items <span>{totalItem}</span></li>
<li>Total <span>{totalAmount}₹</span></li>
</ul>
<a href="#" className="primary-btn" onClick={submit}>Proceed to
checkout</a>
</div>
</div>
</div>
</div>
</section>
</>
);
};
export default ContextCart;
Page |
CAKES N
<div className="items-info">
<div className="product-img">
<img src={image} alt="iamge" />
</div>
<div className="title">
<h2>{title}</h2>
</div>
<div className="add-minus-quantity">
<button onClick={() => increment(id)} >+</button>
<input type="text" placeholder={quantity} disabled />
<button onClick={() => decrement(id)} >-</button>
</div>
<div className="price">
<h3>{price*quantity}₹</h3>
</div>
<div className="remove-item">
<button ><i
className="fas Trash_img "
onClick={() => removeItem(id)}></i></button>
</div>
</div>
<hr />
</>
)
};
export default Items;
Page |
CAKES N
Page |
CAKES N
Page |
CAKES N
</div>
<form action="#">
<div class="mb-3 form-box">
<label>Name</label>
<input type="text" class="form-control" id="name" onChange={(e) => {
setName(e.target.value) }} name="name" placeholder="Enter Your Name" required />
</div>
<div class="mb-3">
<label>Mobile no.</label>
<input type="mobileno" class="form-control" id="mobile_number"
onChange={(e) => { setPhone(e.target.value) }} name="mobileNumber"
placeholder="mobile_number" required />
</div>
<div class="mb-3 form-box">
<label>Address</label>
<textarea type="text" class="form-control" id="address" onChange={(e) => {
setAddress(e.target.value) }} name="address" placeholder="address" required />
</div>
<div class="mb-3 form-box">
<label>Total Item</label>
<input type="number" class="form-control" id="total_item" value={totalItem}
readOnly style={{ backgroundColor:"transparent"}}/>
</div>
<div class="mb-3 form-box">
<label>Total Amount</label>
<input type="number" class="form-control" id="total_amount"
value={totalAmount} readOnly style={{ backgroundColor:"transparent"}}/>
</div>
<button type="submit" class="btn btn-outline-secondary login-btn w-100 "
onClick={submit}>Submit</button>
</form>
</div>
</div>
</div>
</div>
</>
);
}
export default CheckOut;
Page |
CAKES N
import './AdminPannel.css';
import SignInTable from './SignInTable';
import { useNavigate } from 'react-router-dom';
const AdminPannelNav =() =>{
const navigate=useNavigate()
return(
<><div className='container-fluid'>
<div className="row ">
<div className="col-xl-12">
<nav class="navbar navbar-expand-lg sticky-top p-0" >
<button type="button" class="navbar-toggler me-4 " data-bs-toggle="collapse" data-
bs-target="#navbarCollapse">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse " id="navbarCollapse">
<div class="navbar-nav admin-Nav nav" style={{ padding: "0px", margin: "0px"
}}>
<a class="nav-item nav-link hover-underline-animation ps-4 pe-4" onClick={() =>
navigate("/SignInTable")}>Sign In</a>
<a class="nav-item nav-link hover-underline-animation ps-4 pe-4" onClick={() =>
navigate("/ContactTable")}>Contacts</a>
<a class="nav-item nav-link hover-underline-animation ps-4 pe-4" onClick={() =>
navigate("/ClassRegTable")}>Registrations</a>
<a class="nav-link hover-underline-animation ps-4 pe-4" onClick={() =>
navigate("/OrderTable")}>Orders</a>
{/* <a class="nav-item nav-link hover-underline-animation ps-4 pe-4" onClick={()
=> navigate("")}>Contact</a> */}
</div>
</div>
</nav>
</div>
</div></div>
</>
)
}
function AdminPannel() {
return (
<>
<SignInTable />
</>
);
}
Page |
CAKES N
Page |
CAKES N
Page |
CAKES N
</tr>
))}
</tbody>
</table>
</div>
</>
)};
export default OrderTable;
Page |
CAKES N
} catch (error) {
console.error('Error fetching data:', error);
}
};
return (
<>
<AdminPannelNav />
<div className="App" style={{marginLeft:"150px"}}>
<h1>Students List For Registeration </h1>
<table >
<thead>
<tr>
Page |
CAKES N
<th>Name</th>
<th>Phone</th>
<th>Requirement</th>
</tr>
</thead>
<tbody>
{data.map((item, index) => (
<tr key={index}>
<td>{item.name}</td>
<td>{item.phone}</td>
<td>{item.requirement}</td>
</tr>
))}
</tbody>
</table>
</div>
</>
)
};
export default ContactTable;
CSS File
Navbar.css
.body-bg{
background-color: black;
}
.logo{
width:250px;
}
.header{
padding-top: 15px;
height: 180px;
}
.header-info-left .header-social li
{ display: inline-block
}
.header-info-left .header-social li a
{ color: #fff;
font-size: 20px;
text-decoration: none;
padding-right: 19px
}
.header-info-left .header-social li a i {
Page |
CAKES N
.navbar .dropdown-toggle::after {
border: none;
content: "\f107";
font-family: "Font Awesome 5
Free"; font-weight: 900;
vertical-align: middle;
margin-left: 8px;
}
.btn_2{
height:20%;
width:50%;
font-size: large;
}
.nav{
background-color: black;
padding-left:30% ;
}
.nav a{
background-color: black;
Page |
CAKES N
color: #E5BF4A;
display: block;
font-size: x-large;
font-family: 'Dancing Script', cursive;
font-family: 'Protest Revolution', sans-serif;
}
.hover-underline-animation {
display: inline-block;
position: relative;
color: #E5BF4A;
}
.navbar-toggler-icon{
color:#fff;
background-color: #E5BF4A
}
.hover-underline-animation::after {
content: '';
position: absolute;
width: 100%;
transform: scaleX(0);
height: 4px;
bottom: 0;
left: 0;
background-color: #E5BF4A;
transform-origin: bottom right;
transition: transform 0.25s ease-
out;
}
.hover-underline-animation:hover::after {
transform: scaleX(1);
transform-origin: bottom left;
}
.navbar-light .navbar-brand,
.navbar-light a.btn {
height: 75px;
}
.navbar-light.sticky-top {
top: -100px;
transition: .5s;
}
.navbar-toggler{
background-color: black;
color: #E5BF4A ;
}
.main-img{
background-image: url(../../images/hero/h1_hero1.jpg);
background-size: cover;
height: 500px;
width: 100%;
}
.hero-caption{
Page |
CAKES N
font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva,
Verdana, sans-serif;
}
.hero-caption h1{
font-size: 80px;
color: #fff;
}
@media (max-width: 991px) {
.main-img{
height: 470px;
}
.hero-caption h1{
font-size: 70px;
}
}
@media (max-width: 840px) {
.main-img{
height: 420px;
}
.hero-caption h1{
font-size: 60px;
}
}
@media (max-width: 700px) {
.main-img{
height: 360px;
}
.hero-caption h1{
font-size: 50px;
}
}
@media (max-width: 550px) {
.main-img{
height: 320px;
}
.hero-caption h1{
font-size: 40px;
}
}
@media (max-width: 300px) {
.main-img{
height: 300px;
}
.hero-caption h1{
font-size: 30px;
}
}
.btn_1 {
background: #E5BF4A;
Page |
CAKES N
.body-bg {
background-color: black;
}
.main-img {
animation: fadeInAnimation ease
7s; animation-iteration-count: 1;
animation-fill-mode: forwards;
}
@keyframes fadeInAnimation {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.btn_1 {
margin-left: 100px;
width: 200px;
cursor: pointer;
position: relative;
padding: 10px 20px;
background: white;
font-size: 20px;
border-top-right-radius: 10px;
border-bottom-left-radius: 10px;
transition: all 1s;
&:after,
&:before {
content: " ";
Page |
CAKES N
width: 10px;
height: 10px;
position: absolute;
border: 0px solid
#fff; transition: all 1s;
}
&:after {
top: -1px;
left: -1px;
border-top: 5px solid
#e5bf4a; border-left: 5px
solid #e5bf4a;
}
&:before {
bottom: -1px;
right: -1px;
border-bottom: 5px solid
#e5bf4a; border-right: 5px solid
#e5bf4a;
}
&:hover {
border-top-right-radius: 0px;
border-bottom-left-radius: 0px;
&:before,
&:after {
width: 100%;
height: 100%;
}
}
}
.hero-caption {
.hero-caption h1 {
font-family: 'Protest Revolution', sans-serif;
background-image: url(https://media.giphy.com/media/26BROrSHlmyzzHf3i/giphy.gif);
background-size: auto;
color: transparent;
Page |
CAKES N
-moz-background-clip: text;
-webkit-background-clip: text;
text-transform: uppercase;
font-size: 70px;
}
.about-area .about-img img
{ width: 100%;
border-radius: 4px
}
.top-padding {
padding-top: 100px
}
.section-tittle p
{ color: #fff;
font-size: 16px;
font-weight: 300;
line-height: 1.5
}
.section-tittle p a {
text-decoration: underline
}
.section-tittle>span {
color: #E5BF4A;
font-size: 14px;
font-weight: 400;
text-transform: uppercase;
display: inline-block;
letter-spacing: 0.3em;
transform: rotate(-90deg);
position: absolute;
left: -36px;
top: 35px
}
.section-tittle h2 {
color: #DFDFDF;
font-family: "Poiret One",
cursive; font-size: 40px;
display: block;
font-weight: 400;
line-height: 1.3;
margin-bottom: 12px;
position: relative
}
@media only screen and (min-width: 1200px) and (max-width: 1400px) {
.section-tittle h2
{ font-size:
40px
}
.section-tittle p {
font-size: 22px
}
Page |
CAKES N
.section-tittle p {
font-size: 18px
}
}
.section-tittle p {
font-size: 15px
}
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
.section-tittle h2
{ font-size:
31px
}
.section-tittle p {
font-size: 15px
}
}
@media (max-width: 575px) {
.section-tittle h2
{ font-size:
24px
}
.section-tittle p {
font-size: 10px
}
}
.section-tittle.section-tittle3 h2
{ color: #E5BF4A;
font-size: 24px;
padding-left: 0px;
font-weight: 400;
margin-bottom: 28px
}
.section-tittle.section-tittle3 span {
left: -136px;
top: 60px
Page |
CAKES N
}
.spad {
Page |
CAKES N
padding-top: 100px;
padding-bottom: 100px;
background-color: black;
}
.about text p {
margin-bottom: 0;
color: white;
font-size: large;
}
.about text h2{
color:#E5BF4A
}
}
.progress{
border-radius: 10px;
height: 20px;
}
.categories{
background-color: black;
}
.categories slider {
padding-left: 10px;
padding-right: 20px;
padding-top: 50px;
}
.categories item {
text-align: center;
border-radius: 50%;
-webkit-transition: all, 0.3s;
-o-transition: all,
0.3s; transition: all,
0.3s; float: left;
height: 194px;
width: 194px;
Page |
CAKES N
padding-top: 25px;
position: relative;
}
.categories item:hover {
background: #f08632;
}
.categories item:hover:after {
opacity: 1;
}
.categories item:hover span {
color: #ffffff;
}
.categories item:hover h4 {
color: #E5BF4A;
-webkit-text-stroke: 0.5px black;
font-size:25px;
}
.categories item__icon span {
color: #f08632;
-webkit-transition: all, 0.2s;
-o-transition: all,
0.2s; transition: all,
0.2s;
}
.categories item__icon h4 {
color: white;
font-weight: 600;
text-transform: uppercase;
margin-top: 4px;
-webkit-transition: all, 0.2s;
-o-transition: all,
0.2s; transition: all,
0.2s;
font-family: 'Protest Revolution', sans-serif;
}
.section-title {
margin-bottom: 35px;
}
.section-title span
{ color: white;
font-size: 20px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 4px;
display: block;
margin-bottom: 10px;
}
.section-title h2 {
font-size: 46px;
color: #E5BF4A;
line-height: 60px;
font-weight: 700;
Page |
CAKES N
font-style: italic;
font-family: "Playfair Display", serif;
}
.class {
background: black;
position: relative;
padding-bottom: 0;
}
.class form {
height: 620px;
}
.class form form input , form select {
height: 50px;
width: 100%;
padding-left: 20px;
font-size: 15px;
color: #444444;
background: #ffffff;
border: 0.8px solid
E5BF4A; margin-bottom:
20px
}
.class form form input::-webkit-input-placeholder {
color: #444444;
}
.class form form input::-moz-placeholder {
color: #444444;
}
.class form form input:-ms-input-placeholder {
color: #444444;
}
.class form form input::-ms-input-placeholder {
color: #444444;
}
.class form form input::placeholder {
color: #444444;
}
.class form form .nice-select {
float: none;
border-radius: 0;
border: none;
padding-left: 20px;
margin-bottom: 20px;
height: 50px;
line-height: 50px;
}
.class form form .nice-select span {
font-size: 15px;
color: #444444;
}
.class form form .nice-select .list {
margin-top: 0;
Page |
CAKES N
border-radius: 0;
width: 100%;
}
.class form form .nice-select:after {
border-bottom: 1.5px solid #111;
border-right: 1.5px solid #111;
height: 9px;
right: 25px;
width: 9px;
}
.class form form button {
letter-spacing: 2px;
height: 50px;
width: 100%;
padding-left: 20px;
font-size: 15px;
color: #444444;
background: #E5BF4A;
border: none;
margin-bottom: 20px;
}
.class video {
height: 720px;
width: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
border: 1px solid #E5BF4A;
background-image: url(../../images/class-video.jpg);
}
.class video .play-btn {
display: inline-block;
width: 70px;
height: 70px;
background: #f08632;
font-size: 24px;
color: #ffffff;
line-height: 70px;
text-align: center;
border-radius: 50%;
}
Page |
CAKES N
BackEnd Files
const Signupdata={
name:name,
email:email,
password:password
}
Page |
CAKES N
try{
const check=await Signupcollection.findOne({email:email})
if(check){
res.json("exist")
}
else{
res.json("notexist")
await Signupcollection.insertMany([Signupdata])
}
}
catch(e){
res.json("fail")
}
})
app.post("/Contact",async(req,res)=>{
const{name,email,message}=req.body
const Contactdata={
name:name,
email:email,
message:message
}
try{
const check=await Contactcollection.findOne({email:email})
const ClassRegdata={
name:name,
phone:phone,
Page |
CAKES N
requirement:requirement
}
try{
const check=await ClassRegcollection
await ClassRegcollection.insertMany([ClassRegdata])
alert("Done");
}
catch(e){
res.json("fail")
}
})
Page |
CAKES N
console.error(err);
res.status(500).json({ message: 'Server Error' });
}
});
app.post("/checkout",async(req,res)=>{
const{name,
phone,
address,
product,
total_item,
total_amount}=req.body
const CheckOutdata={
name:name,
phone:phone,
address:address,
product:product,
total_item:total_item,
total_amount:total_amount
}
try{
const check=await CheckOutcollection
Page |
CAKES N
Sub Files
Mongo.js
const mongoose=require("mongoose")
mongoose.connect("mongodb://0.0.0.0:27017/CakesNShapes")
.then(()=>{
console.log("mongodb connected");
})
.catch(()=>{ console.log('
failed');
})
const SignupSchema=new mongoose.Schema({
name:{
type:String, required:true
},
email:{
type:String, required:true
},
password:{
type:String, required:true
}
})
const Signupcollection = mongoose.model("collections",SignupSchema)
module.exports=Signupcollection
contactdb.js
const mongoose=require("mongoose")
mongoose.connect("mongodb://0.0.0.0:27017/CakesNShapes")
.then(()=>{
console.log("mongodb connected");
})
.catch(()=>{ console.log('
failed');
})
const ContactSchema=new mongoose.Schema({
name:{
type:String, required:true
},
email:{
type:String, required:true
},
Page |
CAKES N
message:{
type:String, required:true
}
})
const Contactcollection = mongoose.model("contacts",ContactSchema)
module.exports=Contactcollection
classRegdb.js
const mongoose=require("mongoose")
mongoose.connect("mongodb://0.0.0.0:27017/CakesNShapes")
.then(()=>{
console.log("mongodb connected");
})
.catch(()=>{ console.log('
failed');
})
const ClassRegSchema=new mongoose.Schema({
name:{
type:String, required:true
},
phone:{
type:String, required:true
},
requirement:{
type:String, required:true
}
})
const ClassRegcollection = mongoose.model("classregs",ClassRegSchema)
module.exports=ClassRegcollection
checkoutdb.js
const mongoose=require("mongoose");
mongoose.connect("mongodb://0.0.0.0:27017/CakesNShapes")
.then(()=>{
console.log("mongodb connected");
})
.catch(()=>{ console.log('
failed');
})
const CheckOutSchema=new mongoose.Schema({
name:{
type:String, required:true
Page |
CAKES N
},
phone:{
type:String, required:true
},
address:{
type:String, required:true
},
product:{
type:String, required:true
},
total_item:{
type:String, required:true
},
total_amount:{
type:String, required:true
}
})
const CheckOutcollection = mongoose.model("orders",CheckOutSchema)
module.exports=CheckOutcollection
SignInTable.js
const mongoose=require("mongoose")
mongoose.connect("mongodb://0.0.0.0:27017/CakesNShapes", {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const LogindataSchema = new mongoose.Schema({
name:{
type:String, required:true
},
email:{
type:String, required:true
},
password:{
type:String, required:true
}
});
const Logindatacollection = mongoose.model('collection', LogindataSchema);
module.exports=Logindatacollection
Page |
CAKES N
OrderTable.js
const mongoose=require("mongoose")
mongoose.connect("mongodb://0.0.0.0:27017/CakesNShapes", {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const OrdertableSchema = new mongoose.Schema({
name:{
type:String, required:true
},
phone:{
type:String, required:true
},
address:{
type:String, required:true
},
product:{
type:String, required:true
},
total_item:{
type:String, required:true
},
total_amount:{
type:String, required:true
}
});
const OrderTablecollection = mongoose.model('order', OrdertableSchema);
module.exports=OrderTablecollection
ContactTable.js
const mongoose=require("mongoose")
mongoose.connect("mongodb://0.0.0.0:27017/CakesNShapes", {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const ContacttableSchema = new mongoose.Schema({
name:{
type:String, required:true
},
email:{
type:String, required:true
},
Page |
CAKES N
message:{
type:String, required:true
}
});
const ContactTablecollection = mongoose.model('contact', ContacttableSchema);
module.exports=ContactTablecollection
ClassRegTable.js
const mongoose=require("mongoose")
mongoose.connect("mongodb://0.0.0.0:27017/CakesNShapes", {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const ClassRegtableSchema = new mongoose.Schema({
name:{
type:String, required:true
},
phone:{
type:String, required:true
},
requirement:{
type:String, required:true
}
});
const ClassRegTablecollection = mongoose.model('classreg', ClassRegtableSchema);
module.exports=ClassRegTablecollection
Page |
CAKES N
{
"name": "cake_project",
"version": "0.1.0",
"private": true,
"dependencies": {
"@fortawesome/fontawesome-svg-core": "^6.5.1",
"@fortawesome/react-fontawesome": "^0.2.0",
"@testing-library/jest-dom": "^5.17.0",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0",
"animate.css": "^4.1.1",
"axios": "^1.6.7",
"cors": "^2.8.5",
"express": "^4.18.2",
"font-awesome": "^4.7.0",
"formik": "^2.4.5",
"mongodb": "^6.3.0",
"mongoose": "^8.1.1",
"nodemon": "^3.0.3",
"package-name": "^0.1.0",
"react": "^18.2.0",
"react-custom-scrollbars-2": "^4.5.0",
"react-dom": "^18.2.0",
"react-multi-carousel": "^2.8.4",
"react-router-dom": "^6.21.3",
"react-scripts": "5.0.1",
"react-scroll": "^1.9.0",
"react-slick": "^0.29.0",
"slick-carousel": "^1.8.1",
"web-vitals": "^2.1.4",
"yup": "^1.3.3"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
Page |
CAKES N
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"eslint-plugin-react-hooks": "^4.6.0"
}
}
Page |
CAKES N
System Testing
TESTING PRINCIPLES:
All tests should be traceable to customer requirements .The focus of testing will shift
progressively from programs. Exhaustive testing is not possible. To be more effective, testing
should be one, which has probability of finding errors.
The following are the attributes of good test:
A good test has a high probability of finding an error.
A good test is not redundant.
A good test should be “best of breed”.
A good test should neither too simple nor too complex.
LEVEL OF TESTING:
The details of the software functionality tests are given below. The testing procedure that has
been used is as follows:
Page |
CAKES N
1. Unit Testing
2. Integration Testing
3. Validation Testing
4. Output Testing
5. User acceptance system
6. Performance Testing
1. UNIT TESTING:
The first level of testing is called as Unit testing. Here the different modules are tested and the
specifications produced during design for the modules. Unit testing is essential for verification
of the goal and to test the internal logic of the modules. Unit testing was conducted to the
different modules of the project. Errors were noted down and corrected down immediately and
the program clarity as increased .The testing was carried out during the programming stage
itself. In this step each module is found to be working satisfactory as regard to the expected
output from the module.
2. INTEGRATION TESTING:
The second level of testing includes integration testing. It is a systematic testing of constructing
structure. At the same time tests are conducted to uncover errors associated with the interface.
It need not be the case, that software whose modules when run individually and showing perfect
results will also perfect results when run as a whole. The individual modules are tested again
and the results are verified. The goal is to see if the modules can be integrated between
modules. Poor interfacing may result in data being lost across an interface causing serious
problems. This testing activity can be considered as testing the design and emphasizes on
testing modules interactions.
3. VALIDATION TESTING:
The next level of testing is validation testing. Here the entire software is tested. The reference
document for this process is his requirement and the goal is to see if the Software meets its
requirements. The requirement document reflects and determines whether the software
functions the user expected. At the culmination of the integration testing, software is
completely assembled as a package, interfacing and corrected and a final series of software
Page |
CAKES N
test and validation test begins. The proposed system under construction has been tested by
Using validation testing and found to be working satisfactory.
4. OUTPUT TESTING:
The output of the software should be acceptable to the system user. The output requirements
are defined during the System analysis. Testing of the software system id done against the
output requirements and the output testing was completed with success.
6. PERFORMANCE TESTING:
This project is a system-based project, and the modules are interdependent with the other
modules, so the testing cannot be done module by module. So the unit testing is not possible
in the case of this driver. So this system is checked only with their performance to check their
quality.
In case of the Unit testing the initialization module is first tested. Since read Module and the
write module is interdependent the performance testing is done only after the final phase of
coding.
Page |
CAKES N
System Implementation
Implementation include all those activities that take place to convert from the old system to
the new system. The new system may be totally new, replacing an existing system. Proper
Successful implementation may not guarantee any improvement in the organization using the
new system.
Careful planning.
The method of implementation and time scale to be adapted is found out initially. Next, the
system is tested properly and at the same time the users were trained in the new environment.
satisfying all the aspects of the user. All the procedure is designed to minimize the user’s
resistance to change and make an attitude for full utilization of the system.
Page |
CAKES N
SYSTEM SECURITY
The system security problem can be divided into four related issues; security,
integrity privacy and confidentiality. They determine file structure, data structure and access
procedures.
System security refers to the technical innovation and procedures applied to the
hardware and operating system to protect against deliberate or accidental damage from a
defined threat. In contrast, data security is the protection of data from loss, disclosure,
environment, where a file is shared among several users. Protection mechanism must provide
controller access by restricting the type of files, which can be made. Access is permitted or
denied depending upon several factors, one of which is type of access requested.
This is a multi-user project that can be runs on the network. So the system is very
essential thing for prevent unauthorized access. This software has much important security
Page |
CAKES N
MAINTENANCE
System Maintenance
After the use phase is completed and the user is adjusted to the changes created by the new
system, evaluation and maintenance is to continue to bring the new system to the standards. If
the new information is consistent with the design specification, changes have to be made.
is working life and to tune the system to any variation in its working environment. There are
also some errors detected that must be corrected. The quality assurance goal is develop a
procedure for correcting errors and enhancing the software. This procedure improves quality
assurance by encouraging complete reporting and log of problems, ensuring that reported
Page |
CAKES N
FUTURE SCOPE
The scope of the project includes that what all future enhancements can be done in this system
Page |
CAKES N
CONCLUSION
The project “Cake N Shapes” is completed, satisfying the required design specification. The
system provide a user-friendly interface. The project is developed with modular approach. All
modules in the project have been tested with valid data and invalid data and everything work
successfully. Thus the project has fulfilled all the objectives identified and is able to replace
the existing system .The constraints are met and overcome successfully. The project is designed
as like it was decided in the design phase. The project is very user friendly and will reduce time
consumption. This website has a user-friendly screen that enables the user to use without any
Page |
CAKES N
REFERENCE
In general, references are those documents/sources cited within the text. It is necessary you
relate your work to that of other people. Other work explicitly cited should be listed in the
Reference section and referred to in the text using some kind of key.
The references that are used in this website are given below:
https:/www.w3schools.com
https:/stackoverflow.com
https://unsplash.com
https://in.pinterest.com
https://www.pexels.com
Page |
CAKES N
Page |