https://docs.innoshop.cn/zh/introduction/architecture.html# 系统架构
- 设计理念:简洁、易用、核心轻量、易于扩展
- 架构设计:模块化架构、插件化功能、开放接口
## 模块化架构
:::tip 采用 Composer 包管理,利用 Laravel ServiceProvider ,实现系统核心功能模块化,支持灵活替换
:::
- innoshop/common:通用功能模块
- innoshop/front:前端展示模块
- innoshop/panel:管理面板模块
- innoshop/plugin:插件管理模块
- innoshop/install:Web 安装模块
- innoshop/restapi:RESTful API 模块
- innoshop/devtools:开发者工具模块(开发中)
## 插件化功能
:::tip 系统核心保持轻量,基础功能满足电商需求。其他功能通过插件形式实现,支持以下三种 Hook:
:::
- 数据 Hook:处理数据相关逻辑
- 流程 Hook:控制业务流程
- 模板 Hook:自定义模板展示
## 开放接口
:::tip 提供 RESTful 或 GraphQL 接口,方便与其他软件和服务实现无缝集成。接口分为 C 端商城 API 和 B 端管理 API 。
:::
- C 端商城 API:支持客户注册、登录、商品浏览、购物车、结账等全套购物流程,可以用于 headless 、APP 、小程序等开发。
- B 端管理 API:提供商品管理、库存管理、订单管理、客户管理等后台必备接口,可以用于对接第三方 ERP 、WMS 等系统。
通过这样的设计,系统既保持了核心的简洁和高效,又通过模块化和插件化,为扩展和定制提供了极大的灵活性。
同时,开放的 API 接口确保了系统可以与其他软件和服务无缝集成。