Skip to content

Symfony 6, php8.2, PostgreSQL, REST, gRPC shopping cart

License

Notifications You must be signed in to change notification settings

RafalSalwa/Shop

Repository files navigation

Shopping cart

static analysis:

Psalm lvl 2 Type Coverage PHPStan lvl 8 PHPMD - Mess Detector

Code analysis:

PHPCS - Code Sniffer PHPCS-Fixer Rector Architecture & Dependencies

External services Build Status FOSSA Status codecov

Codacy: Codacy Badge

Code climate: Maintainability

SonarQube: Maintainability Rating Reliability Rating Security Rating Lines of Code Duplicated Lines (%) Coverage


Simple and feature rich Shopping cart based on PHP 8.2, Symfony 6, PostgresSQL, OAuth2, gRPC and custom grpc&REST Auth api

Featured with Shopping cart, profile management, Order processing flow with abandoned carts and pendings. Features based on subscription tiers.

⚙️ Installation

make up

or via symfony internal server installed on host:

make local

then You can visit http://127.0.0.1:8001/

Also, there is a openApi documentation at http://127.0.0.1:8001/doc or postman collection in docs folder

Or

visit Demo app

🎯 Features

  • Products listings based on subscription tier
  • Flow control with Symfony Workflows and Security Voters
  • cart management via view or REST Api
  • REST communication with Auth-api via JWT Tokens for authentication flow in User Providers and Authenticators
  • OAuth2 server integration for authorization flow
  • Doctrine entities with Inheritance pattern and abstraction for cart and order items
  • GitHub actions, Jenkins, Gitlab integrations
  • gRPC clients for external (golang) Auth-api
  • Clean layered architecture checked by PHPArkitect and deptrac
  • Static analysis with PHPStan lvl 7, Psalm lvl 2, PHPMD, PHPCS, PHP-CS-Fixer, Rector
  • External tools for quality analysis PHPMetrics, PHPInsights, Snyk, SemGrep, SonarQube, Codacy & codecov

👀 Other Apps


Screenshots:

deptrac REST grpc