Code Monkey home page Code Monkey logo

ecommercewebapplication's Introduction

Ecommerce Web Application

Project Scope(Functionality)

Admin

  1. View User Details: Admin can view details of Customers
  2. View Orders: Admin can view all the purchased orders in the system on the dashboard.
  3. View Products: Admin can view all the products available in the system, similar to customers and can edit it.
  4. No Ordering: Admin cannot place orders within the application.

Customer

  1. View Products: Customers should be able to browse and view products based on different categories.
  2. Add to Cart: Customers can add products of their choice to their shopping cart.
  3. Manage Cart: Customers can add, delete, and modify products in their shopping cart.
  4. Place Orders: Customers can place orders by providing essential details such as address, phone number, payment information, net billed amount, and quantities of products.

Common

  1. Login: Users should be able to authenticate and log in to the application.
  2. Register/Signup: New users should be able to create an account.

High Level Diagram

high_level_diagram

Spring Data Flow

data_flow_backend

DB Architecture

High Level Diagram

high_level

Low Level Diagram

DB Architecture

DB

User Screens

Home Page

Alt text

Register

Alt text

Login

Alt text

Navigation

Alt text

Profile

Alt text

Products

Alt text

Order

Alt text

Cart

Alt text

Checkout

Alt text

Order Summary

Alt text

Payment

Alt text

Admin Screens

Products List

Products_list

Customers List

Alt text

Orders List

Alt text

Add Product

Alt text

MySQL Installation

To install MySQL for a Windows application, follow these steps:

  1. Download MySQL Installer

Go to the official MySQL website: https://dev.mysql.com/downloads/installer/ Download the MySQL Installer for Windows. Choose the appropriate version (usually the latest stable version is recommended).

  1. Run MySQL Installer

Run the MySQL Installer executable that you downloaded. You will be presented with the MySQL Installer setup wizard. Click "Yes" if prompted for administrative privileges.

  1. Choose an Installation Type

In the MySQL Installer, you'll have the option to choose an installation type. For a typical development setup, choose "Developer Default." This option will install MySQL Server, MySQL Workbench (a graphical tool for managing MySQL), and other useful tools.

  1. Installation Process

Follow these steps during the installation process:

a. Accept the License Agreement. b. Choose "Standalone MySQL Server / Classic MySQL Replication" as the setup type. c. Click "Next" and let the installer download and install the required components.

  1. MySQL Configuration

During the installation, you'll be prompted to configure MySQL:

a. Set a root password for MySQL. Choose a strong password and remember it. b. Click "Next" to proceed with the installation.

  1. MySQL Windows Service

You'll have the option to configure MySQL as a Windows service:

a. Choose "Configure MySQL Server as a Windows Service." b. Click "Next."

  1. Complete Installation

Review your configuration settings, and click "Execute" to complete the installation. MySQL Server will be installed as a Windows service, which means it will start automatically when your computer boots up.

  1. Start MySQL Server

Once the installation is complete, you can start the MySQL Server service:

a. Open the Windows Services manager. You can do this by pressing Win + R, typing services.msc, and hitting Enter. b. Find "MySQL" in the list of services. c. Right-click on "MySQL" and choose "Start."

  1. Configure Spring Boot Application

Now that MySQL is installed and running, configure your Spring Boot application as mentioned in the previous response. Update your application.properties or application.yml file with the appropriate database configuration.

  1. Restart Spring Boot Application

Restart your Spring Boot application to apply the new database configuration.

That's it! MySQL should now be installed and configured for your Windows-based Spring Boot application with the specified database settings.

Create Database

  • Execute the following to config the database
CREATE DATABASE full_stack_ecommerce;
CREATE USER 'ecommerceapp'@'localhost' IDENTIFIED BY 'ecommerceapp';
GRANT ALL PRIVILEGES ON full_stack_ecommerce.* TO 'ecommerceapp'@'localhost';
FLUSH PRIVILEGES;
EXIT;

To Run Frontend code

Prerequisites:

Node.js and npm (Node Package Manager) should be installed on your computer. You can download and install them from the official website: https://nodejs.org/

  1. Navigate to the Project Directory

Change your working directory to the newly created project folder:

cd 00_Frontend
  1. Start the Development Server

To start the development server and run your React app locally, use the following command:

npm start

This command will start the development server, and your React app will be accessible at http://localhost:3000 by default.

  1. Open Your React App in a Web Browser

After running npm start, your default web browser should open automatically, and you'll see your React app. If it doesn't open automatically, you can manually open a web browser and go to http://localhost:3000

To Run Backend

  1. Open your IDE.
  2. Locate the main class (usually annotated with @SpringBootApplication) in your project.
  3. Right-click on the main class.
  4. Select "Run" or "Debug" to start the application.

Tech Stack

  • React
  • Java
  • Spring Boot
  • Mysql

ecommercewebapplication's People

Contributors

pradytpk avatar dependabot[bot] avatar lpborah avatar m0hammedishaq avatar

Watchers

 avatar  avatar

ecommercewebapplication's Issues

Code Implementation

Common functionalities for all the users

  • Login
  • Register/Signup

Customer Functionalities :

  • Customers should be able to view the products based on different categories (eg: Electronics, Books…)

Seller Functionalities :

  • Sellers can add new products to the system.

Interim Report-1

  1. Introduction
  • Provide an overview of the capstone project, including its goals, objectives, and significance.
  • Provide background information about the project and its relevance in the field of Full Stack Development.
  1. Project Scope and Objectives
  • Clearly define the scope and boundaries of the project.
  • Identify the specific objectives and deliverables of the project.
  1. Methodology
  • Explain the methodologies, frameworks, and tools used in the project.
  • Discuss the technologies and programming languages used for the frontend, backend, and database development.
  1. System Architecture and Design
  • Present the system architecture and high-level design of the project.
  • Describe the chosen architectural patterns and design principles.
  • Include diagrams or visual representations to illustrate the system's components and their interactions.
  1. Progress and Accomplishments
  • Outline the progress made during the interim period.
  • Describe the tasks completed, milestones achieved, and any challenges encountered.
  • Provide evidence of the implemented features or functionalities.

6.Future Work and Timeline

  • Outline the remaining tasks and deliverables for the project's completion.
  • Identify any potential risks or challenges that may arise during the remaining development and implementation.
  1. Conclusion
  • Summarize the progress made and achievements thus far.
  • Reflect on any lessons learned or adjustments made to the initial project plan.
  • Provide a brief overview of the next steps and the expected outcomes of the project.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.