Skip to content

ahmedmohamed24/ecommerce

Repository files navigation

API for E-commerce

Technologies:

PHP MYSQL docker postman PHP

Features

  • TDD
  • Docker
  • Admin | Merchant | User basic operations
    1. Login and Register Admin only login
    2. Reset Password
    3. verify Email only user and Merchant
    4. OTP to verify Phone Number TWILLIO Service
    5. CRUD operations based on the responsiblities
  • PayPal Payment Intergration
  • STRIPE Payment Intergration
  • Redis cache server
  • Algolia Elastic search
  • SHOPPING Cart in the case of using session (front-end application)
  • FACEBOOK & GITHUB Authentication
  • POSTMAN automation testing
  • Malitrap for mailing service in production
  • MailTrap for mailing service in Testing
  • Queues and Jobs (Redis Driver)
  • Github Actions

Getting started:

  1. Fork this Repository

  2. change the current directory to project path ex: cd ecommerce

  3. make the database folder mkdir mysql

  4. docker-compose build && docker-compose up -d

    alert: if there is a server running in your machine, you should stop it or change port 80 in docker-compose.yml to another port(8000)

  5. install dependencies with composer cd src && composer install, if you are in a production server and composer is not installed, you can install the dependencies from docker environment docker-compose exec php /bin/sh then, composer install

  6. run docker-compose exec php php /var/www/html/artisan migrate --seed

  7. run docker-compose exec php php /var/www/html/artisan test to run all tests and make sure everything is OK

  8. run docker-compose exec php php /var/www/html/artisan queue:work redis --tries=2 to start the Queue

  9. import the database in POSTMAN and begin your work

Info: if you want only the Laravel project, copy the /src folder to wherever you want and make database with name store , then generate key php artisan key:generate, then php artisan serve

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages