0% found this document useful (0 votes)
26 views

Project Report

The document describes an ecommerce application that allows users to buy and sell products online. Key features include user authentication, searching for products, adding products to cart, and checkout/payment functionality. The application uses a MEAN stack with MongoDB for the database, Express/Node.js for the backend, and AngularJS for the frontend. It has a modular architecture following the MVC pattern. Users can sign up, search products by category, view recommended deals, add products to cart, and make payments using Stripe during checkout. Ratings and reviews are also supported.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views

Project Report

The document describes an ecommerce application that allows users to buy and sell products online. Key features include user authentication, searching for products, adding products to cart, and checkout/payment functionality. The application uses a MEAN stack with MongoDB for the database, Express/Node.js for the backend, and AngularJS for the frontend. It has a modular architecture following the MVC pattern. Users can sign up, search products by category, view recommended deals, add products to cart, and make payments using Stripe during checkout. Ratings and reviews are also supported.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

ECOMMERCE

5/6/2018
Ecommerce + Elearning

Table of Contents
1. Introduction ............................................................................................................................... 2

2. Ecommerce ................................................................................................................................. 3
2.1 Overview ................................................................................................................ 3
2.2 Technologies Used .................................................................................................. 4
2.3 Architecture ............................................................................................................ 5
2.4 Schema Design ........................................................................................................ 8
2.5 Features .................................................................................................................. 9

1|Page
Ecommerce + Elearning

1. Introduction:

The project is “e-commerce” web application which provides a platform for buying and
selling of e-commerce products such as books, electronic items, software etc.

As part of e-commerce platform, Users can sign up and log-in into the application using a
general email-id or through social networking platform such as Facebook. Once logged in, Users
will then be able to add products to their cart and then checkout for final shipping. Users can also
provide review and ratings to the products which they bought. Users can search products based
on categories and are made aware of products with special discount offers.

2|Page
Ecommerce + Elearning

2. E Commerce
2.1 Overview:

• E Commerce is one of the two modules which was developed as a part of our project.
• It is a platform form where users can buy products such as books, electronic items, etc.
• Users can register as sellers if they want to sell products on this platform.
• Registration can be done with email signup.
• There is a search bar, where we can search the desired products.
• After logging in, users can add the products to their cart and checkout.
• There is also a provision for ratings and review for the products bought by the users.
• Customers also can track their products.
• ChatBot is also designed for allowing customers to interact when they have doubt
regarding the products and any issues.
• For front-end (user interface) part, we used HTML, CSS, Bootstrap, Angular JS.
• For back-end part, which include connections between different modules and database
connections we used Node JS, Express JS, MongoDB(Database).
• Used Stripe API for payments.
• Images are stored in the cloud resource (Amazon S3 bucket).
• Used Mlab for database hosting.

3|Page
Ecommerce + Elearning

2.2 Technologies used:

Front-end: HTML, CSS, Bootstrap, AngularJS


Back-end: NodeJS, ExpressJS, MongoDB, Stripe
Data-Base service: Mlab

HTML: Hyper Text Markup Language is used to create the main structure of a webpage,
which outlines the important components in the webpage which we see.
CSS: Cascading Style Sheets is used to define styles of HTML. All the styles, which we
see on the webpage can be given credit to CSS.
Bootstrap: CSS and Java Script library. It is a free and open source front end library for
designing web applications. Bootstrap has some pre-defined styles, which we can
use directly by copying the respective code.
AngularJS: AngularJS is a Java Script based front-end web development framework. It is
very useful to create single-page applications. AngularJS was developed by
Google.
NodeJS: NodeJS is an open-source and cross-platform Java Script run-time environment
which executes JavaScript code server-side.
ExpressJS: It is a web application framework, which is used for NodeJS. ExpressJS can be
used for designing web applications and APIs.
MongoDB: MongoDB is an open-source, cross platform database system. It is a No-SQL
database and uses Java Script Object Notation -like documents with schemas.
Stripe: Stripe is the payment processing API which we used here.
Mlab: mLab is a fully managed cloud database service that hosts MongoDB databases.

4|Page
Ecommerce + Elearning

2.3 Architecture:

• The technologies which are used for building ecommerce are MongoDB, ExpressJS,
AngularJS, NodeJS. This stack is popularly called MEAN stack.
• The architectural work flow of MEAN stack is as follows:
• If client makes a request, it is processed by AngularJS. Now, after
AngularJS processes the request, NodeJS takes control.
• In NodeJS, the request is processed by ExpressJS and this makes request
to the database.
• Here, MongoDB will get the data and returns it to ExpressJS
• ExpressJS will now send the data to NodeJS and then the data is received
by AngularJS, which is responsible for displaying the result.
The main architecture that lies under this entire flow is the Model View Controller, which
is popularly called MVC architecture.

• Model:
o Model manages application data and it responds to the requests made from
views, also listens to the instructions from controller.
• View:
o View is the portion which we see in the web application. View is responsible to
display the data to user.
• Controller:
o Controller is very important because it controls the interactions between Model
and Views. Controller responds to user input and performs interactions on the
models. This also validates input.

5|Page
Ecommerce + Elearning

Fig: Request – Response Model.

• When the user sends a request to through AngularJS then that request is firstly accessed
by the NodeJS threading is done in the NodeJS and then it is sent to the ExpressJS.
• ExpressJS sends the request to MongoDB.
• MongoDB processes the request and send back to ExpressJS.
• NodeJS retrieves data from ExpressJS.
• Now, AngularJS receives data from NodeJS and updates the views and users can see the
updated data.

6|Page
Ecommerce + Elearning

The architecture control flow is as follows:


Front-end architecture flow:
• New user registers with email and logs in. After logging in, the user can
search for products.
• If the user is registered as seller, then he can also post products.
• There is a dashboard, which contains all the products which were ordered,
and we can also track the products.
• Users can leave reviews for the items they bought and also ratings.
• The ratings and reviews are dynamically updated firstly by AngularJS and
once they are posted, they are saved to the Database.
Back-end architecture flow:
• On the backend part NodeJS sees that all the data is dynamically updated
in MongoDB with the help of Express.js.
• Users are authenticated, and only authenticated users can place orders.
• The users who are authenticated can add items to the cart and checkout.
• At the time of checkout, stripe payment API is used to make the payment
possible.
• NodeJS keeps in contact with MongoDB to update the data dynamically.
ExpressJS framework helps NodeJS in achieving this.
Mlab is the cloud database service which we used here, and this keeps
updating the data of the application in real time.

7|Page
Ecommerce + Elearning

2.4 Schema Design:


Overall schema design for Ecommerce Application

8|Page
Ecommerce + Elearning

2.5 Features:

i) User authentication:

Login:

Register:

9|Page
Ecommerce + Elearning

ii) Recommended Deals:

iii) Search functionality:

10 | P a g e
Ecommerce + Elearning

iv) Categories:

v) Cart:

11 | P a g e
Ecommerce + Elearning

vi) Payment:

12 | P a g e
Ecommerce + Elearning

vii) Reviews:

viii) Track Orders:

13 | P a g e
Ecommerce + Elearning

ix) Change account settings:

x) Chatbot

14 | P a g e

You might also like