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.localhostsite on Apache web server using the provided virtual host configuration file (in theserverdirectory).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.phpbased on thedbconnection.php.configfile (in theserverdirectory). 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