A full-stack, single-page React e-commerce web application with a dynamic PHP API that allows shoppers to browse properties, add their items to a cart, and place orders online.
- React
- Webpack 4
- Material-UI
- HTML5
- CSS3
- PHP
- MySQL
- AWS EC2
Try the application live at https://shopoly.adisonlay.com/.
- Shoppers can view the items for purchase.
- Shoppers can view the details of an item.
- Shoppers can add items to their cart.
- Shoppers can view their cart summary.
- Shoppers can update their cart item quantity.
- Shoppers can remove items from their cart.
- Shoppers can place an order.
- Shoppers can view their order summary.
- Shoppers can view their order history.
- npm 6 or higher
- MySQL 5.7 or higher
- PHP 7.2 or higher
- Apache HTTP Server
-
Clone the repository.
git clone https://github.com/adisonlay/shopoly.git cd shopoly
-
Install all dependencies with npm.
npm install
-
Add and enable the
shopoly.localhost
site on Apache web server using the provided virtual host configuration file (in theserver
directory).cp server/shopoly.localhost.conf /etc/apache2/sites-available a2ensite shopoly.localhost service apache2 restart
-
Connect to MySQL and create a new database.
mysql -u username -p CREATE DATABASE `shopoly`; quit;
-
Configure MySQL database connection file
dbconnection.php
based on thedbconnection.php.config
file (in theserver
directory). Include the host, username, and password for your database management system. -
Import the example database to MySQL.
mysql -u username -p shopoly < shopoly.sql
-
Start the project. Once started you can view the application by opening http://localhost:3000 in your browser.
npm run dev