logo

System Architecture

  • Design Philosophy: Simple, user-friendly, lightweight core, easy to extend
  • Architecture Design: Modular architecture, pluggable features, open interfaces

Modular Architecture

Utilizes Composer for package management and Laravel ServiceProvider to achieve modularization of core system functions, supporting flexible replacement

  • innoshop/common: Common functionalities module
  • innoshop/front: Front-end display module
  • innoshop/panel: Admin panel module
  • innoshop/plugin: Plugin management module
  • innoshop/install: Web installation module
  • innoshop/restapi: RESTful API module
  • innoshop/devtools: Developer tools module (in development)

Pluggable Features

The core system remains lightweight, with basic functionalities meeting e-commerce needs. Additional features are implemented as plugins, supporting the following three types of hooks:

  • Data Hook: Handles data-related logic
  • Process Hook: Controls business processes
  • Template Hook: Customizes template displays

Open Interfaces

Provides RESTful or GraphQL interfaces to facilitate seamless integration with other software and services. Interfaces are divided into C-end store API and B-end management API.

  • C-end Store API: Supports customer registration, login, product browsing, shopping cart, checkout, and the entire shopping process, suitable for headless, apps, mini programs, etc.
  • B-end Management API: Provides essential backend interfaces for product management, inventory management, order management, customer management, and can be integrated with third-party ERP, WMS systems.

Through this design, the system maintains core simplicity and efficiency while offering great flexibility for expansion and customization via modularization and pluggable features. At the same time, open API interfaces ensure seamless integration with other software and services.