A clone of Amazon, built using React, Express.js, and Firebase (for authentication), CSS Modules for styling.
- User Authentication: Sign up and log in with Firebase.
- Home Page: Browse through product categories and featured products.
- Product Details: View detailed information about each product.
- Cart Functionality: Add and remove products to/from your shopping cart.
- Order Summary: Display a summary of selected items in the cart.
- Payment Method: Using Stripe for React to process real transactions (demo).
- Frontend: React, JavaScript, CSS Modules
- Backend: Express.js (instead of Firebase due to payment method limitations)
- Authentication: Firebase
- API: FakeStoreAPI (for fetching product data)
- Deployment: Frontend on Netlify, Backend on Render
- Payment: Stripe
git clone https://github.com/samuelAemro12/amazon-clone
cd amazon-clone
npm install
npm start
This is a full-stack Amazon clone built to showcase my skills in both front-end and back-end development. The site features product categories, a product details page, and a cart system. Users can sign up, log in, and manage their shopping experience.
I used React for the front end, Express.js for the backend, and Firebase for user authentication. Product data is fetched from the FakeStoreAPI. I used many intricate coding pracrices such as route protection, loading animation.
react-router-dom: Routing react: General Library react-dom: React rendering firebase: User Authentication axios: Fetching data from FakeStoreAPI react-spinners: Loading spinners react-responsive-carousel: Image carousel for product displays numeral: Formatting numbers
Public
Samuel Aemro Melese - https://github.com/samuelAemro12/
This project allowed me to explore full-stack development while learning React, Express.js, and Firebase and a bit of asynchronous JavaScript. I worked on implementing user authentication, product display, and the shopping cart functionality, and fast page to page and component routing. The FakeStoreAPI provided the product data. During development, I used resources like React.js Documentation, Express.js Documentation, for learning and troubleshooting.
Samuel Aemro - samuelaemrowork12@gmail.com