0% found this document useful (0 votes)
60 views36 pages

Online Home Décor Shopping App

Swiggy project report

Uploaded by

sd8546706
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)
60 views36 pages

Online Home Décor Shopping App

Swiggy project report

Uploaded by

sd8546706
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

CHAPTER 1

CENTER PROFILE

1
1. CENTER PROFILE

1.1 About the CENTER

“STP COMPUTER EDUCATION CENTER” develops applications and solutions that put the
client first. When anyone come to us for help, we perceive them as business partners first and
clients second, taking on projects that we consider and making them our own.
They trust creating success for our clients by high lighten their specialties to the world. They are
a set of pioneers in designing, developing and creating web solutions. They have built our own
niche around services including Web Design, Website Development, Mobile Apps, SEO, and
Digital Marketing. They stand tall as leaders in the industry with our ethics being one of our
strongest pillars. They are a bunch of passionate individuals. They love the work we do and so
will you!
“Swast Solutions Private Limited” is a complete web solution provider in multi-dimensional IT
services such as web development, design solutions, Data Architecture, Data Processing, internet
marketing, software development services and data services for companies across the world. We
offer a 360° approach to Digital Marketing with services range from Search to Content to social
media to Website Design to Mobile Advertising. We offer our clients genuine and hassle-free
technology solutions with precise performance guarantee at competitive prices.

1.2 What center do


We beautify your business image and put it on the platform for the world to recognize your
magnificence. We meticulously take care of all your media and web necessities, while you focus
on your work. We, at “Swast Solutions Private Limited” ensure that our people are happy with
the work we provide, whether it is our team membersor our clients. We help you in creating a
success out of your dream projects, with much liability and passion.
1.3 Goal of the Center
They give you accurately what your business needs, an advanced platform and an innovative
outlook. We make your business attractive and help it attract customers. “Swast Solutions Private
Limited “is dedicated to produce resourceful and top-notch solutions to its clients.

2
CHAPTER 2
INTRODUCTION
AND
OVERVIEW OF THE
PROJECT

2. INTRODUCTION

3
The project "ONLINE FOOD DLEIVERY OF HOME"

Fig. 2.1

This is a web-based application which helps people to find and buy latest home décor
items on internet. It is useful in the way that it makes an easier way to buy home décor
items. This application has signup and login facility for customer apart from navigating
on the whole website.
The customer has to register for purchasing any items online. The unregistered person
can’t purchase on this application.

2.1 Project Objective: -


The objective of the project is to make an application in android platform to purchase
home décor items online. In order to build such an application complete web support
need to be provided. A complete and efficient web application which can provide the
online shopping experience is the basic objective of the project.

This project is an attempt to provide the advantage of online shopping service and home
delivery. The central concept of the application is to allow the customer to shop virtually
using the internet and allow customers to buy the items and articles of their desire from
the huge type of categories available. The customer has to register for making any
purchase on the website. However, no registration is required to navigate on the website.
The login credentials for an online.

2.2 Some of the main features are:

4
● Practicality
● Efficiency
● Cost
● Flexibility
● Portability
● Security
● easily accessible & always available

2.3 Timeline:
The project timeline will be divided into various stages, including planning, design,
development, testing, and deployment. A project management approach will be employed
to ensure timely completion and effective coordination among team members.

2.4 PROJECT CATEGORY:

Fig. 2.2

Web Based Application

The web applications are expected to be available round-the-clock from anywhere in the

5
world, and usable from any device for any screen size.

2.5 Technologies:
Front-End: HTML, CSS and React.
Back-End: Node JS, MongoDB

2.5.1 Front-End

HTML - It is used to generate web page. HTML, an initialism of Hypertext


Markup Language, is the predominant markup language for web pages. It provides
a means to describe the structure of text-based information in a document — by
denoting certain text as headings, paragraphs, lists, and so on.

REACT - It is used for checking User information before sending. REACT is a


JAVASCRIPT Library most often used for create a single page application in web
development. It is a dynamic, weakly typed, prototype-based framework with first-
class functions. Currently, "REACT" is an implementation of the JAVASCRIPT
standard

Cascading Style Sheets (CSS) - is a style sheet language used for describing
the look and formatting of a document written in a markup language. CSS is designed
primarily to enable the separation of document content from document presentation,
including elements such as the layout, colors, and fonts. This separation can improve
content accessibility, provide more flexibility and control in the specification of
presentation characteristics, enable multiple pages to share formatting, and reduce
complexity and repetition in the structural content (such as by allowing for table less web

AJAX - AJAX is a new technique for creating better, faster, and more interactive web
applications with the help of XML, HTML, CSS, and REACT through Java Script

2.5.2 Back-End

NODE JS (Runtime Environment) - [Link] is an open-source, cross-

6
platform runtime environment that allows developers to run JavaScript code outside of a
web browser. It is primarily used for building server-side and networking applications.
[Link] is built on Chrome's V8 JavaScript engine, which makes it fast and efficient.
[Link] uses an event-driven, non-blocking I/O model, meaning it can handle multiple
requests at once without waiting for one process to finish before starting another.

Key Features of NODE JS:

1. Non-Blocking I/O and Asynchronous: [Link] uses an event-driven, non-blocking I/O


model, meaning it can handle multiple requests at once without waiting for one process to
finish before starting another. This makes [Link] highly scalable and efficient when
dealing with tasks like handling multiple users or I/O-heavy operations like
reading/writing to a database or files.

2. Single-Threaded but Scalable: [Link] operates on a single thread but uses non-
blocking asynchronous calls to handle multiple concurrent operations. This is achieved
by using event loops and callback functions.

3. Fast and Lightweight: Since it is built on the V8 JavaScript engine, [Link] is fast in
executing JavaScript code. It's also lightweight because it uses an event-driven model,
which reduces memory usage compared to traditional server models.

4. NPM (Node Package [Link] comes with NPM, the world's largest ecosystem
of open-source libraries. Developers can install and manage reusable packages of code
(called modules) to save time and avoid reinventing the wheel.

5. Extensive Library Support: [Link] is well-suited for building real-time applications


such as chat applications, online gaming, or collaborative tools. This is because of its
asynchronous nature and Web Sockets, which enable two-way communication between
the server and client.

7
6. Open Source: NODE JS is an open-source language, meaning its source code is freely
available for developers to view, modify, and distribute. This fosters a large and active
community of developers who contribute to its improvement and maintenance.

7. Scalability: Node js is known for its ability to handle a high volume of web traffic,
making it suitable for building scalable web applications and websites.

8. Frameworks: There are several popular NODE JS frameworks, such as Laravel,


Symfony, CodeIgniter, and Yii, which provide a structured way to develop web
applications. These frameworks streamline the development process and promote code
reusability.

9. Fast Execution: Node js are typically executed quickly, making node js a performant
choice for web development.

MongoDB - MongoDB is a NoSQL database that stores data in a flexible, document-


oriented format, meaning that instead of using tables and rows as in traditional
relational databases, it stores data in JSON-like documents..

IIS SERVER/Xampp- Apache is a web container, or application server developed


at the Apache Software Foundation (ASF).It adds tools for configuration and
management but can also be configured by editing configuration files that are normally
XML-formatted. Apache includes its own internal HTTP server.

8
CHAPTER 3
REQUIREMENT ANALYSIS

9
3.1 Hardware Requirements

Fig. 3.1

3.2 Software Requirements:

Name Description

Operating System WINDOWS-11

Front-End HTML/CSS/REACT

Back-End NODE JS

Web-Server IIS SERVER/WAMPSERVER

Database MongoDB

Text-Editor VISUAL STUDIO CODE

Fig. 3.2

3.3 Problem Identification/Existing System:


In today’s busy world, people don’t have time for their personal needs. There are very
least organizations which are manual. The present scenario for shopping is to visit the
shops and market manually and then from the available product list one needs to choose

10
the item he/she wants to purchase. This System is not much user-friendly as one needs
to go to the market physically and select items only from the available list otherwise
visit to next shop and search for the [Link] mostly it is difficult to get the product as
per our desire. Description about the products is less available and are mostly verbal
only. For this type of shopping, one needs to have an ample amount of free time.

Also finding home décor items sometimes becomes out of reach for certain people as
not really good markets exist everywhere

3.4 Solution/Proposed System:


In the proposed system customers need not to go to the shops for purchasing the
product. He/she can order the product that wishes to buy through the use of this
system. This system also endorses a home delivery system for delivering the
purchased products.
As everything is going to be computerized and online whether it is banking,
advertising or shopping. We are trying to help people to make their life easier by
providing home décor items for shopping online. Here the customer has to register
for making any purchase on the website.
However, no registration is required to navigate on the website. The unregistered person
can’t make the purchase

The project’s home page includes the signup and login link along with other links such as
About, Today’s Deal etc.

It is simple. You will pick your favorite home décor item such as Wall-clocks,
Wall-shelves, Furniture and showpieces etc. from variety of items looking at cost
and quality. No need to go physical shops with this you will have more time to
spend with your [Link] is extremely secure.

11
CHAPTER 4
SOFTWARE DESIGN

12
4.1 Dataflow Diagram

The DFD is also called as bubble chart. dataflow diagram (DFD) is a graphical
representation of the "flow" of data through an information system. DFD’s can also
be used for the visualization of data processing. The flow of data in our system can
be described in the form of dataflow diagram as follows: -

DFD-0 Level Diagram

Fig. 4.1

DFD-1 Level Diagram

Fig.4.2

13
ER-Diagram

Fig. 4.3

14
Chapter 5
SYSTEM DEVELOPMENT
LIFE CYCLE

15
The Systems Development Life Cycle (SDLC) is a conceptual model used in
project management that describes the stages involved in an information system
development project from an initial feasibility study through maintenance of the
completed application. Various SDLC methodologies have been developed to
guide the processes involved including the waterfall model (the original SDLC
method).
Documentation is crucial regardless of the type of model chosen or devised for
any application, and is usually done in parallel with the development process.
Some methods work better for specific types of projects, but in the final
analysis, the most important factor for the success of a project may be how
closely particular plan was followed.

Fig. 5.1

16
Chapter 6
System Implementation

17
The implementation phase involves installing approved applications into production
environments. Primary tasks include announcing the implementation schedule, training
end users, and installing the product. Additionally, organizations should input and verify
data, configure and test system and security parameters, and conduct post-implementation
reviews. Management should circulate implementation schedules to all affected parties
and should notify users of any implementation responsibilities

After organizations install a product, pre-existing data is manually input or


electronically transferred to a new system. Verifying the accuracy of the input data
and security configurations is a critical part of the implementation process.
Organizations often run a new system in parallel with an old system until they verify
the accuracy and reliability of the new system. Employees should document any
programming, procedural, or configuration changes made during the verification
process.

For implementation of the website project:


1. The website can be installed on a computer or a server which has PHP and
MongoDB installed in it.
2. The owners of the website are to be properly trained to use all the features of the
website, giving details of each feature of the website.
3. To show the accuracy of the website and conformance of the website to the
requirements of the owners or users of the website.

6.1 What is NODE JS:

Node js (Runtime Environment) is a popular server-side scripting language designed


primarily for web development. It is an open-source, general-purpose programming
language that is embedded within HTML code and executed on the server-side. Node js
is used to generate dynamic web pages, interact with databases, and perform various

18
server-side tasks.

Key Features of Node js:


1. Server-Side Scripting: Nodr js is executed on the web server, allowing developers
to create dynamic web pages by generating HTML content on the fly based on
various conditions and data.
2. Integration with HTML: Node js code can be embedded directly into HTML,
enabling developers to mix node js and HTML seamlessly. This integration
allows node js to handle form processing, data retrieval from databases, and other
server-side tasks.
3. Database Support: Node js has extensive support for connecting to and interacting
with various databases, making it easy to store, retrieve, and manipulate data from
databases like MySQL, PostgreSQL, Oracle, and more.
4. Extensive Library Support: Node js has a vast collection of pre-built functions and
libraries that facilitate common tasks such as working with files, handling images,
processing forms, and more, making development faster and more efficient.
5. Cross-Platform: Node js is compatible with various operating systems, including
Windows, macOS, Linux, and others, ensuring that Node js-based applications
can run on different types of web servers.
6. Open Source: Node js is an open-source language, meaning its source codeis
freely available for developers to view, modify, and distribute. This fosters a large
and active community of developers who contribute to its improvement and
maintenance.
7. Scalability: Node js is known for its ability to handle a high volume of web
traffic, making it suitable for building scalable web applications and websites.

6.2 What is MongoDB


MongoDB is a NoSQL database that stores data in a flexible, document-oriented format, meaning
that instead of using tables and rows as in traditional relational databases, it stores data in JSON-
like documents. This structure allows for dynamic schemas, making MongoDB highly adaptable
to changes in data requirements over [Link] is known for its performance, scalability,
reliability, and ease of use, making it a preferred choice for various applications ranging small .

19
Key Features of MongoDB:

1. Document-Oriented Database MongoDB follows a document-oriented database model,


where data is organized in flexible, JSON-like documents instead of traditional rows and
columns. Each document can have a different structure, allowing for dynamic data
representation.

2. Query Language: MongoDB uses its own query language that allows users to perform
operations like data insertion, retrieval, modification, and deletion. The query language is
flexible and designed to work seamlessly with the document [Link]-Server .

3. Client-Server Architecture: MongoDB is compatible with various operating systems,


including Windows, macOS, Linux, and more, making it suitable for a wide range of
environments.

4. High Performance: MongoDB is designed to be fast and efficient, allowing it to handle


large volumes of data and support high-traffic applications. It includes features like
indexing and caching to optimize query performance.

5. Security: MongoDB offers robust security features, including user authentication, access
control, encryption, and data integrity mechanisms, to protect sensitive data and ensure
data security.

6. Replication and Clustering: MongoDB supports replication and clustering, allowing for
data replication and distribution across multiple servers for improved data redundancy
and high availability.

7. Triggers and Stored Procedures: MongoDB allows users to create triggers and stored
procedures, enabling developers to automate tasks, enforce business rules, and enhance
database functionality.

6.3 What is AJAX


AJAX stands for Asynchronous JavaScript and XML. It is a set of web development techniques

20
that allows web pages to interact with the server asynchronously without the need for a full-page
refresh. With AJAX, web applications can update specific parts of a web page with new data or
content without reloading the entire page.

Key Concepts of AJAX:


1. Asynchronous Communication: AJAX enables asynchronous communication between
the web browser and the server. This means that data can be sent to and received from the
server in the background without interrupting the user's interaction with the web page.

2. JavaScript: AJAX relies heavily on JavaScript, which is a client-side scripting language.


JavaScript is used to handle the interactions with the server, update the DOM (Document
Object Model), and manipulate the content of the web page dynamically.

3. XMLHttpRequest (XHR) Object: The XMLHttpRequest object is at the core of AJAX. It


is used to make asynchronous requests to the server and handle the server's responses.
The XMLHttpRequest object can send and receive data in different formats, including
XML, JSON, HTML, and plain text.

4. Server Communication: AJAX enables data exchange between the web browser and the
server using various data formats, such as XML, JSON (JavaScript Object Notation), or
HTML. JSON has become more popular due to its lightweight and easy-to-parse nature.

5. Dynamic Content: AJAX allows web pages to load data and update content dynamically
without requiring a full page refresh. This enhances the user experience and makes web
applications feel more interactive and responsive

21
6.4 Coding
Login Code :
if(isset($_POST['login']))
{
include('[Link]');
$user=$_POST['username'];
$pwd= MD5($_POST['pwd']);

$query="select * from signup where username='$user' and


password='$pwd' ";
// print_r($query);die;
$res=mysqli_query($con,$query);
if($row=mysqli_fetch_array($res))
{
session_start();
$_SESSION['user']=$user;
echo"<script>alert('valid
User');[Link]='[Link]';</script>";
}
else
{
echo"<script>alert('Invalid User');</script>";
}
} // close if
?>

Fig. 6.1
Logout Code :

<?php
session_start();
unset($_SESSION['user']);
session_destroy();
header('location:[Link]');
?>

Fig. 6.2

22
Sign Up Code :

<?php
if(isset($_POST['signup']))
{
$user=$_POST['username'];
$pwd= $_POST['pwd'];
$confirm_password=$_POST['confirm_password'];
$gender=$_POST['gender'];
$date_of_birth=$_POST['date_of_birth'];
$email=$_POST['email'];
$contact=$_POST['contact'];
$address=$_POST['address'];
$pin_code=$_POST['pin_code'];
$city=$_POST['city'];
if($pwd==$confirm_password)
{
include('[Link]');
$pwd = MD5($pwd);
$query="insert into
signup(username,password,gender,date_of_birth,email_id,contact,addre
ss,pin_code,city) values
('$user','$pwd','$gender','$date_of_birth','$email','$contact','$add
ress','$pin_code','$city')";
//echo "$query";
$res=mysqli_query($con,$query);
if($res)
{
echo "<script>alert('sign up
successfull');[Link]='[Link]';</script>";
}
else
{
echo "<script>alert('error in registraton');</script>";
}
}

Fig. 6.3

23
Connection Code :
<?php
$con=mysqli_connect("localhost","root","","myHome_db");
if(!$con)
{
die("could not connect to database".mysqli_error());
}
?>

Fig. 6.4

Header Code to show either user is Logged in or not :

<?php
if(isset($_SESSION['user'])){ ?>
<li><a href="javascript:void(0)"> Welcome <?=
ucfirst($_SESSION['user']);?></a></li>
<li><a href="[Link]"><span class="glyphicon
glyphicon-log-in"></span> Logout</a></li>
<?php }else{ ?>

<li><a href="[Link]"><span class="glyphicon glyphicon-


user"></span> Sign Up</a></li>
<li><a href="[Link]"><span class="glyphicon glyphicon-
log-in"></span> Login</a></li>

<?php }
?>

Fig. 6.5

24
Listing Product Category :

<?php
include('[Link]');
$query="select * from product_info where category='Wall Painting'
order by product_id DESC limit 0,4 ";
$res=mysqli_query($con,$query);
while($row=mysqli_fetch_array($res))
{
?>
<div class="col-md-3">
<a href="[Link]?pid=<?php echo $row['product_id'];?>"> <img
src="<?php echo $row['picture_1'];?>" alt="wallpinting" class="img-
rounded" style="width:100%" height="300" ></a>
</div>
<?php
}
?>

Fig. 6.6
6.5 Software Testing:
Software testing is the process used to measure the quality of developed computer
software. Usually, quality is constrained to such topics as correctness, completeness,
security, but can also include more technical requirements as described under the ISO
standard ISO 9126, such as capability, reliability, efficiency, portability, maintainability,
compatibility, and usability. Testing is a process of technical investigation .

Fig. 6.7

25
White box, black box, and grey box testing:

White box and black box testing are terms used to describe the point of view that a test
engineer takes when designing test cases. Black box testing treats the software as a
black-box without any understanding as to how the internals behave. Thus, the tester
inputs data and only sees the output from the test object. This level of testing usually
requires thorough test cases to be provided to the tester who then can simply verify that
for a given input, the output value (or behavior), is the same as the expected value
specified in the test case.

White box testing, however, is when the tester has access to the internal data structures,
code, and algorithms. For this reason, unit testing and debugging can be classified as
white-box testing and it usually requires writing code, or at a minimum, stepping through
it, and thus requires more skill than the black-box tester. If the software in test is an
interface or API of any sort, white-box testing is almost always required.

In recent years the term grey box testing has come into common usage. This involves
having access to internal data structures and algorithms for purposes of designing the test
cases, but testing at the user, or black-box level.
This is particularly important when conducting integration testing between two modules
of code written by two different developers, where only the interfaces are exposed for
test.

Grey box testing could be used in the context of testing a client-server environment
when the tester has control over the input, inspects the value in a SQL database, and the
output value, and then compares all three (the input, sql value, and output), to determine
if the data got corrupt on the database insertion or retrieval.

26
Fig. 6.8
Types of Testing

a) Unit Testing

Unit testing involves the design of test cases that validate that the internal program
logic is functioning properly, and that program input produces valid outputs. All
decision branches and internal code flow should be validated. It is the testing of
individuals of tare units of the [Link] is done after the completion of an
individual unit before integration. This is a structural testing, that relies on
knowledge of its construction and is invasive. Unit tests perform basic tests at
component level and test a specific business process, application, and/or system
configuration. Unit tests ensure that each unique path of a business process
performs accurately to the
documentedspecificationsandcontainsclearlydefinedinputsandexpectedresults.

b) Integration Testing

Integration tests are designed to test integrated software components to determine


if they actually run as one program. Testing is event driven and is more concerned
with the basic outcome of screens or fields. Integration tests demonstrate that
although the components were individually satisfaction, as shown by successfully
unit testing, the combination of components is correct and consistent. Integration
testing is specifically aimed at exposing the problems that arise from the
combination of components.

c) System Testing

System testing ensures that the entire integrated software system meets
requirements. It tests a configuration to ensure known and predictable results. An
example of system testing is the configuration-oriented system integration test.
System testing is based on process descriptions and flows, emphasizing pre-driven
process links and integration points.

27
d) Integration Testing

Software integration testing is the incremental integration testing of two or more


integrated software components on a single platform to produce failures caused by
interface defects. The task of the integration test is to check that components or software
applications, Ex components in a software system or one step up software applications at
the company level-interact without error.
Test Results: All the test cases mentioned above passed successfully. No defects
encountered.

e) Acceptance Testing

User Acceptance Testing is a critical phase of any project and requires significant
participation by the end user. It also ensures that the system meets the functional
requirements.
Test Results: All the test cases mentioned above passed successfully. No defects
encountered.

Verification and Validation

Software testing is used in association with verification and validation (V&V).


Verification is the checking of or testing of items, including software, for conformance
and consistency with an associated specification. Software testing is just one kind of
verification, which also uses techniques such as reviews, inspections, and
walkthroughs. Validation is the process of checking what has been specified is what the
user actually wanted.

• Verification: Have we built the right software? (i.e. does it match the specification)
• Validation: Have we built the right software? (i.e. is this what the customer wants?)

28
6.6 Snapshots

Homepage:

Fig. 6.9

29
About Us

Fig. 6.10

30
Signup:

Fig. 6.11

Login:

Fig. 6.12

31
Product Category Page :

Fig. 6.13

Cart Page :

Fig. 6.14

32
Checkout Page :

Fig. 6.15

Contact Us :

Fig. 6.16

33
Forgot Password :

Fig. 6.17

34
Chapter 7
FUTURE SCOPE

35
7.1 Conclusion
We can have a website that will cover whole India giving details of Arts created by
persons.
The On-Line Placement System website will have the prominent features including:
• Providing online Placement Record through our site.
• Providing personalized inbox to the user.
• Providing links to news which will elaborate more information.
• Providing more Ajax technology refreshing in our website.

36

You might also like