Project Report On: Online Grocery Store Website
Project Report On: Online Grocery Store Website
on
ONLINE GROCERY STORE WEBSITE
This is to certify that Mr. Prashant and Mr. Prince, student of B. Tech in Computer Science and
Engineering have carried out work presented in the project of the Term paper entitle “Online
Grocery Store Website” as a part of 4-year program of Bachelor of Technology in Computer
Science and Engineering from BM Institute Of Engineering & Technology, Sonepat.
ACKNOWLEDGEMENT
The satisfaction that accompanies that the successful completion of any task would be
incomplete without the mention of people whose ceaseless cooperation made it possible, whose
constant guidance and encouragement crown all efforts with success. We would like to thank Dr.
Abhinav Juneja, Head of Department-CSE, for giving us the opportunity to undertake this
project. We would like to thank our friends who are the biggest driving force behind our
successful completion of the project. They have been always there to solve any query and also
guided us in the right direction regarding the project. Without their help and inspiration, We
would not have been able to complete the project. Also We would also like to thank our parents
who guided us, helped us and gave ideas and motivation at each step.
Prashant , Prince
BM Institute Of Engineering & Technology
TABLE OF CONTENTS
Abstract..................................................................................................................[i]
List of Figures......................................................................................................[ii]
1. Introduction
1.1 Objective
1.2 Overview
1.3 Scope
2. Study of the Store System
2.1 Django-Backend
2.2 HTML
2.3 CSS
3. Webpages and URLs
3.1 Login and register page
3.2 Homepage with the products list
3.3 Shopping cart
3.4 Checkout page
3.5 User details
3.6 About Us
3.7 Admin Panel
3.8 Database
4. Advantages and Issues related to E-commerce
References..................................................................................................................[iv]
ABSTRACT
This ‘online Grocery Store’ is a web-based application system that is a front for a virtual
grocery store selling grocery items. Just like all other technologies, this project is an
attempt to understand and provide online grocery services to customers. Little do they
need is just an internet connection.
The current wave of COVID-19 pandemic has already damaged the growth engines of
the world such as China, U.S.A, Italy and India badly. So, at times such unpredictable
where people have been forced inside their homes to save their lives, Sellers can make
use of this system to provide service to the customers. All they need is to upload the
products and get started. Having multiple advantages for both the worlds of consumers
and sellers, this eay-to-use E-commerce system is an evolution to the shopping world
with vast and easy accessibility.
LIST OF FIGURES
1.1 OBJECTIVE
1.2 OVERVIEW
The focal idea of the application is to permit the client to shop for all
grocery purposes utilizing the Internet and permit clients to purchase the
things and articles of their craving from the store. The data relating to
the items are stores on a RDBMS at the server side (store).
The Server procedure the clients and the things are transported to the
location put together by them. The application was planned into two
modules initially is for the clients who wish to purchase the articles.
Second is for the vendors who keeps up and refreshes the data relating
to the articles and those of the clients. The end client of this item is
a departmental store where the application is facilitated on the web and
the admin keeps up the database.
The application which is sent at the client database, the subtleties of
the things are presented from the database for the client see dependent
on the determination through the menu and the database of the
considerable number of items are refreshed toward the finish of every exchange.
Information passage into the application should be possible through different
screens intended for different degrees of clients.
1.3 SCOPE
2.1 DJANGO
Django is an elevated level Python Web structure that supports quick turn of
events and spotless, down to earth plan. Worked by experienced designers, it
deals with a great part of the problem of Web improvement, so you can
concentrate on composing your application without expecting to waste time. It's
free and open source.
Why Django?
LUDICROUSLY QUICK.
Django was intended to assist designers with taking applications from idea
to fulfillment as fast as could reasonably be expected.
COMPLETELY STACKED
Django incorporates many additional items you can use to deal with basic
Web improvement errands. Django deals with client confirmation, content
organization, site maps, RSS channels, and a lot more undertakings directly
out of the container.
REASSURINGLY SECURE
Django pays attention to security and assists designers with maintaining a
strategic distance from numerous basic security botches, for example, SQL
infusion, cross-site scripting, cross-site demand fraud and clickjacking. Its
client confirmation framework gives a safe method to oversee client records
and passwords.
EXCEEDINGLY VERSATILE
Probably the busiest sites on earth utilize Django's capacity to rapidly and
deftly scale to fulfill the heaviest traffic needs.
In the proposed framework client need not go to the shop for purchasing the items.
He can arrange the item he wish to purchase through the application on the
world wide web.
Pycharm version 11.0.6 has been used as the software for creating virtual
environment for the project. Under the terminal window, ‘pip install Django’
command was used to install Django into the system.
The ‘python manage.py runserver’ command is used to run the project on the
local server.
Figure 2.1
Under the main directory ‘CO-19 Store’, there are 5 listed python files with .py extension:
1.init.py: The init .py document makes Python treat indexes containing it as modules.
Moreover, this is the main record to be stacked in a module, so you can utilize
it to execute code that you need to run each time a module is stacked, or
determine the submodules to be sent out.
4 urls.py: In url.py, the most important thing is the "urlpatterns" tuple. It's the
place you characterize the mapping among URLs and perspectives. A mapping is
a tuple in URL patterns like − from django. conf. urls import patterns, include,
url from django.
Under the products app directory, there are 3 sub-directories with the same
python files as above coupled up with some more .py files.
The three sub-directories are:
1.Migrations which contains the information regarding data migration to the
respective tables.
2.static which contains CSS files aimed at making the webpages more
presentable and sleek. It also contains the images of the vegetables including the
background image for the login page.
1.admin.py: this python file under the app directory is used to register the
models defined inside the models.py file. This file also controls the access,
username and passwords to the admin section of the website pre-defined in the
Django framework.
2. apps.py:this file merely contains the configuration command for the products app.
3.form.py: this python file plays an important role in this project. As the name suggests,
it contains the implementation code regarding the registration form and the login
form.
Figure 2.2
The fields inside the register form are
fields = ['name','address','mobile_no','username','password','confirm_password']
Another client should enlist in the framework by giving details so as to see the
items in the framework. The administrator must acknowledge another client by
viewing him.
The login form as usual contains the username and password field with a link to
register yourself if the user is new to the shopping system. A user must login
with his user name and password to the system after registration.
4. models.py: This .py extension file contains the basic models for the grocery
store system. The models are bigb, user and item.
Figure 2.3
The bigb model contains the overall design of the system.
The user model contains the attributes and information regarding the user
currently logged in the store as a customer. This model is supplied this
information by the meta class defined under register form.
The item model defines the features and attributes of the products itself. The
attributes include price, quantity, image and title.
[10]
All the models are defined as model classes and the attributes of the respective
models are defined as the members of the classes along with the suitable datatype.
The ‘Django.db’ package already contains the pre-defined model class.
5.urls.py: this python file is not so different from the previous urls.py file. This
file contains all urls and webpages described under the chapter ‘Webpages and
URLs’ which are home page, cart , about us , user details etc.
Figure 2.4
These have been depicted and discussed in the succeeding study.
6. views.py: this python file contains all the Django views concerning the Grocery
Store project. Django sees are a key part of uses worked with the structure. At
their most straightforward they are a Python capacity or class that takes a web
solicitation and return a web reaction. Perspectives are utilized to do things like
bring objects from the database, alter those articles if necessary, render structures,
return HTML, and substantially more.
Our views.py file here contains the addtocart , home, login , register ,cart , aboutus,
personaldetails and more other views.
The venv library root directory contains all the classes and packages installed
under Django.
There is a database file named as ‘db.sqlite3’ which can easily be viewed using
sql lite freely available on the internet. This database file is integrated in the
django project itself and contains all the required meta-data and tables.
2.2 HTML
A HTML component is set off from other content in a record by "labels", which
comprise of the component name encompassed by "<" and ">". The name of a
component inside a tag is case obtuse. That is, it very well may be written in uppercase,
lowercase, or a blend. For example, the <title> tag can be composed as <Title>,
<TITLE>, or in some other way.
HTML utilizes "markup" to explain content, pictures, and other substance for
display in a Web program. HTML markup incorporates special "components, for
example, <head>, <title>, <body>, <header>, <footer>, <article>, <section>, <p>,
<div>, <span>, <img>, <aside>, <audio>, <canvas>, <datalist>, <details>,
<embed>, <nav>, <output>, <progress>, <video>, <ul>, <ol>, <li> and numerous others.
<title></title> — the <title> component. This sets the title of your page,
which is the title that appears in the program tab the page is stacked in.
It is likewise used to portray the page when you bookmark/most loved it.
The ‘template’ directory in the project contains all the HTML files as follows:
CSS is a language that depicts the style of a HTML doc. CSS depicts how
HTML components ought to be shown.
Numerous CSS revelations are isolated with semicolons, and statement squares are
encircled by wavy supports.
CSS is intended to empower the partition of introduction and substance, including design,
hues, and fonts. This division can improve content availability, give greater
adaptability and control in the determination of introduction qualities, empower
various pages to share organizing by indicating the important CSS in a different .css
document, and decrease multifaceted nature and reiteration in the auxiliary substance.
Advantages include:
Partition of substance from introduction
Site-wide consistency
Data transfer capacity
Page reformatting
Openness
Figure 3.1
This is the login page of the Grocery store website. Here the user which is already
registered with the seller can enter his/her username and password and login to purchase
grocery items.
Log in Button takes the user to the products list homepage. Also if, the user or the
customer is new to the store, he/she can register him/her with the seller for the future. For
this purpose, a Register button has been provided which takes the user to the REGISTER
form.
The user needs to enter his name, address, mobile no., username and password. After the
user is done with entering the details, he/she needs to click on the sign up button which
will take the user or the customer back to the login page where he/she can enter the
username and password and log on to the online grocery store.
3.2 HOMEPAGE WITH THE PRODUCTS LIST
Figure 3.3
The above picture depicts the homepage of the grocery store website with all products
listed.
The user who wishes to buy the respective items can click on the ‘add’ button with the
preferred quantity. Upon ‘add’ button click, the preferred items with the desired quantity
is added to the user’s or the customer’s cart.
In addition to the product list, the homepage contains the access to all the other sections
of the website such as aboutus, personal details, cart etc.
Also a ‘logout’ button is provided if the user or the customer wishes to logout of the
online grocery store portal.
3.3 SHOPPING CART
Figure 3.4
The shopping cart is displayed above. The shopping cart contains the grocery products
added by the user or the customer who visited the grocery store and wished to buy them.
The individual prices along with the total amount are properly displayed on the shopping
cart displayed.
The ‘checkout’ button at the bottom left corner of the webpage takes the user or the
customer to the checkout page where the customer enters all the billing address details
along with the payment details for the grocery products order.
[20]
3.4 CHECKOUT PAGE
Figure 3.5
This is the checkout page of the online grocery store portal. Here all the details regarding
the order to be placed by the user or the customer is provided by him/her to the seller.
Along with all the billing and shipping address details, the payment details with the card
details of the customer is securely supplied to the seller for successful payment.
Upon entering all the correct shipping address and payment details , the user or the
customer needs to click the ‘Place Order’ button. Upon clicking the following button, a
message as “YOUR ORDER IS SUCCESSFULLY PLACED!” is displayed.
3.5 USER DETAILS
Figure 3.6
Here all the details of the user are visible to the user. The customer can also edit the
information or the details and then save the details successfully.
3.6 ABOUT US
Figure 3.7
Here the brief introduction of the Grocery store are presented along the details of the
developer.
3.7 ADMIN PANEL
One of the most powerful parts of Django is the automatic admin interface. It reads metadata
from your models to provide a quick, model-centric interface where trusted users can manage
content on your site. The admin’s recommended use is limited to an organization’s internal
management tool. It’s not intended for building your entire front end around.
Figure 3.8
The admin has many hooks for customization, but beware of trying to use those hooks
exclusively. If you need to provide a more process-centric interface that abstracts away the
implementation details of database tables and fields, then it’s probably time to write your own
views.
Figure 3.9
Figure 3.10
3.8 DATABASE
PostgreSQL
MariaDB
MySQL
Oracle
SQLite
Figure 3.11
CHAPTER-4
4.1 ADVANTAGES
There are numerous conspicuous and not really evident geniuses to working
together on the web. Seeing precisely what they are can assist you with utilizing
them to further your potential benefit:
1. A Larger Market
Web based business permits you to arrive at clients everywhere throughout the
nation and around the globe. Your clients can make a buy anyplace and whenever,
particularly more individuals are becoming accustomed to shopping on their cell
phones.
Regardless of whether you're sending guests to your eCommerce site through SEO,
PPC promotions or a past postcard, there is an approach to follow your traffic and
clients' whole client excursion to get bits of knowledge into catchphrases, client
experience, advertising message, estimating technique, and then some.
The smoothed out coordinations, particularly for dealers who do "outsource," permit
organizations to react to market and eCommerce patterns and purchaser requests in a deft
way. Traders can likewise make advancements and arrangements on the fly to pull in
clients and produce more deals.
4. Lower Cost
With the development in eCommerce stage innovations, it has gotten extremely simple
and moderate to set up and keep up an eCommerce store with a low overhead. Dealers no
longer need to spend a huge financial plan on TV advertisements or board, nor stress over
the cost for work force and land.
Dealers can just give a constrained measure of data on an item in a physical store. Then
again, eCommerce sites permit the space to incorporate more data, for example, demo
recordings, surveys, and client tributes to help increment transformation.
6. Customized Messaging
Web based business stages offer shippers the chance to present customized
substance and item proposals to enrolled clients. These focused on
correspondences can help increment transformation by demonstrating the most
significant substance to every guest.
4.2 LIMITATIONS
There are provokes exceptional to this plan of action - realizing them will assist
you with exploring the rough waters and maintain a strategic distance from
regular entanglements:
A few shoppers esteem the individual touch they get from visiting a physical
store and communicating with deals partners. Such close to home touch is
especially significant for organizations selling top of the line items as clients
need to purchase the product as well as have an extraordinary encounter during
the procedure.
Regardless of how well a video is made, buyers despite everything can't contact
and feel an item. Also, it is anything but a simple accomplishment to convey a
brand understanding, which could regularly incorporate the feeling of touch,
smell, taste, and sound, through the two-dimensionality of a screen.
This is quite self-evident, yet remember that your clients do require Internet access before
they can buy from you! Since numerous eCommerce stages have highlights and
functionalities that require rapid Internet access for an ideal client experience, there's an
opportunity you're barring guests who have moderate associations.
Charge card misrepresentation is a genuine and developing issue for online organizations.
It can prompt chargebacks that bring about the loss of income, punishments, and terrible
notoriety.
6. IT Security Issues
Internet business organizations depend vigorously (or exclusively) on their sites. Indeed,
even only a couple of moments of personal time or innovation hiccups can cause
a considerable loss of income and client disappointment.
8. Multifaceted nature In Taxation, Regulations, and Compliance
On the off chance that an online business offers to clients in various regions,
they'll need to stick to guidelines in their own states/nations yet in addition in
their clients' place of living arrangement. This could make a great deal of
complexities in bookkeeping, consistence, and tax assessment.
SCOPE FOR FUTURE RESEARCH AND MODIFICATIONS
There is always more space and room for making suitable changes and modifications to
the project. In my case, I have recognized the following points as scope for future
changes and modifications which can be done to the project:
A payment gateway can be added to the checkout section to make this project
ready-for-use for the sellers. This service is a paid service available worldwide
through many secure payment gateways such as paytm, paypal.
More products can be introduced into the products sections with proper
classification and distinction under different categories.
A more easy-to-use admin portal can be provided to the seller to be able to edit
the quantity and number of products available in the store.
The webpages can be made more presentable with more animations and more
suitable color schemes.
REFERENCES