MySQL, Angular, Express.js and Node.js based Mobile E-Commerce Store
Frontend -> Angular
Backend -> Node.js
Middileware -> Express.js
Database -> MySQL
It is an E-Commerce Website which aims to sell the mobile phones and have almost all the functions and pages that an ecomm website have, the project is divided into two major sections
1. Customer
1.1 Home/ Dashboard
1.2 Shop
1.3 Cart
1.4 Checkout
1.5 Billing Page (With SMS and Billing PDF)
1.6 Orders
1.7 Login/ Signup/ Change Password/ Forgot Password Screen (OTP Verification)
2. Admin
2.1 Admin Login
2.2 Admin Home / Dashboard
2.3 Add Product to Website Screen (Adding Product to Server)
2.4 All Products Management Screen (Products of Server Management)
2.5 All Customer Orders Management Screen
Note:
1.For Using the SMS Function after Order using FAST2SMS SMS API you need to genereate your own API key at [FAST2SMS](https://docs.fast2sms.com/) and paste it in the backend index.js
2. You Need to upload the Phone Product Photo at time of Adding Product to Server
3. All the Phone Product Photos will be stored into the uploads folder at the backend
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
You'll need Angular 2+ (https://angular.io/guide/setup-local) Git and Node.js (which comes with npm) [Express.js] (https://www.npmjs.com/package/express) installed on your computer
angular @v7.0 or higher
node @v10.16.0 or higher
npm @6.9.0 or higher
express @4.17.1 or higher
git @2.17.1 or higher
# Moving to database table folder
$ cd DB
# Login to root
$ mysql -uroot -p
Your Password:
# Create Database
$ CREATE DATABASE Mobikartdb;
# Create New Database User
$ create user 'Mobikart'@'localhost' identified by 'Mobikart@123';
# Grant All Privileges to User
$ grant all privileges on Mobikartdb.* to 'Mobikart'@'localhost' with grant option;
# Now quit from mysql, then login as accounting by typing
$ mysql -uMobikart -p
$ Your Password: Mobikart@1234
# Choose Database
$ use Mobikartdb
# Create Customer Table in Database
$ source Customer.sql
$ source Company.sql
$ source Orders.sql
$ source Product.sql
$ source Product_Review.sql
(Tables will be created)
# Use SELECT Statement to check the data after the CRUD Operations into the MySql Tables.
From your command line, clone and run Mobikart E-Commerce Website:
# Clone this repository
$ git clone https://github.com/ankit1222000/Mobikart-Mobile-E-Commerce-Website.git
# Install Angular dependencies
$ npm install
# Start Angular Development Server
$ ng serve
(this will start the project on http://localhost:4200/)
# To see the Dashboard you can head over to http://localhost:4200/dashboard.
# To see the Admin Panel you can head over to http://localhost:4200/admin. (**Password:Admin123**)
# For Production use
$ ng build --prod
$ cd API
# Install Backend Express API Dependencies
$ npm install
# Start Express API server
$ node index.js
(You will notice now the data appers on the dashboard and is coming form the server running at Port:3000)
Some Screenshots of the Project