Skip to content

mohamedsorour1998/MarketX

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MarketX: Cloud Full Stack Ecommerce Project

This project is an ecommerce API and web application built using Django, Django Rest Framework (DRF), and Angular. Users can browse and buy products online through a user-friendly interface. The API supports secure user authentication using JWT tokens stored in local storage, with custom token handling and decoding for user identification. Cross-Origin Resource Sharing (CORS) is also supported for cross-domain requests. The application is deployed on Google Cloud Platform (GCP) using Google Kubernetes Engine (GKE), and GitHub Actions is utilized for CI/CD. A VIDEO TO THIS PROJECT IN ACTION => https://www.linkedin.com/feed/update/urn:li:activity:7063481349159948289/ Screenshot 2023-08-29 221233 Screenshot 2023-08-29 221246 Screenshot 2023-08-29 221328

Key Features

  1. User authentication using JWT tokens
    • JWT tokens are stored in local storage
    • Custom token handling and decoding for user identification
  2. CORS support for cross-domain requests
  3. Category management system
  4. Product catalog with search and filter functionality
  5. User management system
  6. Checkout functionality
  7. Angular-based web application for a responsive user experience
  8. Deployment on GCP using GKE
  9. Continuous Integration and Continuous Deployment (CI/CD) using GitHub Actions

Requirements

  1. Django
  2. Django Rest Framework (DRF)
  3. PostgreSQL database
  4. django-cors-headers
  5. Angular
  6. Node.js and npm

Refer to the README.md files inside the backend and frontend directories for the installation and setup instructions for each part.

Deployment on GCP using GKE

The application is deployed on Google Cloud Platform using Google Kubernetes Engine. Refer to the official GCP documentation for information on deploying applications with GKE. Screenshot 2023-08-30 220309

CI/CD using GitHub Actions

This project uses GitHub Actions for Continuous Integration and Continuous Deployment. The actions are defined in the .github/workflows/ directory. Please consult the official GitHub Actions documentation for guidance on setting up and configuring GitHub Actions for your project.

Documentation

This README serves as a user manual and technical documentation for the project. Please refer to the README.md files inside the backend and frontend directories for the installation and setup instructions for each part.

For further information on working with Django and DRF, consult the Django documentation and the Django Rest Framework documentation, respectively.

For the frontend, refer to the Angular documentation for guidance on working with Angular, and the Node.js documentation for guidance on Node.js.

For implementing JWT authentication, refer to the Django Rest Framework SimpleJWT documentation for information on working with token-based authentication.

For the django-cors-headers library, consult the official documentation for guidance on setting up CORS support.

Contributing

If you have any suggestions, improvements, or bugs to report, please open an issue or submit a pull request. All contributions are welcome!

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Authors

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors