GithubHelp home page GithubHelp logo

vijita-u / amazon-clone-reactjs Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 305 KB

A full-stack Amazon clone with a full payment functionality using React Js, React Context API, Firebase, Stripe and other technologies.

Home Page: https://clone-using-react-js-c2ec1.web.app/

License: MIT License

JavaScript 66.75% HTML 1.94% SCSS 31.31%
bem-naming cloud-functions-emulator cloud-functions-for-firebase firebase firebase-auth firestore-database material-ui reactjs responsive-web-design sass stripe-payments firebase-hosting

amazon-clone-reactjs's Introduction

Full-Stack Amazon Clone Web Application

Amazon Mockup

Overview

This project is a full-stack web application built with cutting-edge technologies to replicate the core functionalities of the original Amazon platform. It demonstrates knowledge in various technologies, including React.js for the frontend, Stripe for secure payment processing, React Context API for efficient state management, Firebase Cloud Functions for handling Stripe payments, Firebase Firestore for real-time database management, Firebase for user authentication, Sass for styling, React-Slick for a dynamic carousel, and responsive design for cross-device compatibility. Please note that this clone is for educational purposes only and does not process actual payments.

Technologies Used

  1. ReactJS
  2. Firebase (User Authentication, Firestore and Cloud Functions)
  3. Axios
  4. React Context API (State Management)
  5. Sass
  6. Material UI
  7. StripeJS

Project Features

Frontend

  1. ReactJs & Material UI: The project leverages React.js and Material UI for the frontend to closely resemble the actual amazon.
  2. Stripe Payment Processing: Payment processing is integrated with Stripe, offering a seamless checkout experience which replicates an actual payment functionality.
  3. React Context API: Used to efficiently manage state of user and cart information.
  4. Firebase Authentication: Employed for user authentication, providing robust and secure login and registration functionalities.
  5. Sass Styling: Styling is organized and modular with Sass, enhancing maintainability and scalability.

Backend

  1. Firebase Cloud Functions: Leveraged for implementing Stripe payments and handling order processing.
  2. Firebase Firestore: A real-time NoSQL database is used to keep track of user orders, providing real-time updates and a responsive shopping experience.
  3. Axios and Express.js: Employed to set up an API for payment processing, receiving payment intents from Stripe, and ensuring secure transactions.

Project Structure

- /src
  - /axios
    - axios.js
  - /components
    - App.js
    - Header.js
    - ...
  - /firebase
    - firebaseConfig.js
  - /react-context-api
    - reducer.js
    - StateProvider.js
  - /scss
    - /utils
      - ...
    - styles.scss
  - index.js
  - index.scss
  - ...
- /functions
  - index.js

Getting Started

Installation

  1. Clone the repository
      git clone https://github.com/vijita-u/Amazon-Clone-ReactJs.git
    
  2. Install dependencies using npm:
      npm install
    

Usage

  1. Start the development server:
      npm start
    
  2. Access the web application through your browser.
  3. Browse products, add items to your cart, and proceed to checkout with Stripe payment processing (note that no actual payments are processed).

Deployment

To deploy the project

  1. Create a Firebase project and configure Firebase settings in /src/firebase/firebaseConfig.js.
  2. Login to firebase through command line
      firebase login
    
  3. Initialize firebase project
      firebase init
    
  4. Build the project:
      npm run build
    
  5. Deploy to firebase:
      firebase deploy
    

Credits

License

This project is open-source and available under the MIT License.

Contact

amazon-clone-reactjs's People

Contributors

vijita-u avatar

Stargazers

 avatar  avatar

Watchers

 avatar

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.