组件
这边是Malagu各个组件的文档,你可以在这里找到你需要的组件的文档。
基础组件
组件可以基于一个基础组件提供高阶功能。在实现我们的组件的时候,我们可以通过属性配置、依赖注入动态替换等机制等方式扩展基础组件,从而提供高阶的功能。
Malagu 框架本身也是由一些列组件组成,随着越来越多的组件加入,Malagu 框架将提供越来越丰富的功能。比如 Malagu 框架的 @malagu/core
: 组件,其他组件几乎直接或者间接依赖于它,它提供了框架最为核心的能力,其他组件基于它可以更方便的提供垂直化的能力,如前端开发、Web 服务、微服务等等。
Malagu 框架包含的基础组件依赖关系
组件索引
@malagu/core
: 核心组件,包含了依赖注入、日志、数据验证等核心能力@malagu/web
:Web 组件,包含了 Web 应用核心逻辑的抽象@malagu/mvc
:MVC 组件,提供了基于装饰器的 REST 风格 Web API 定义方式@malagu/rpc
:RPC 组件,提供了基于装饰器的 RPC 风格 Web API 定义方式@malagu/cache
缓存管理组件,基于cache-manager
模块实现的缓存管理组件,默认提供内存存储策略,我们也能很方便的使用其他存储策略,如 redis、mongodb、memcached 等等@malagu/schedule
: 任务调度组件,提供了基于 Cron 的定时任务调度能力,支持部署 Serverless 平台@malagu/typeorm
: 数据库组件,提供了基于 TypeORM 的简化数据库操作相关封装@malagu/security
: 安全组件,提供了认证与授权核心逻辑的抽象@malagu/serve-static
: 静态资源服务组件,提供了开箱即用的静态资源服务能力@malagu/logger
: 日志组件,提供了基于 pino 的高级日志能力@malagu/oidc-provider
:OIDC 提供者组件,提供了快速自建 OIDC Provider 服务能力@malagu/fc-adapter
: 阿里云函数计算适配器组件,提供了部署到函数计算平台上的能力@malagu/scf-adapter
腾讯云函数适配器组件,提供了部署到云函数平台上的能力@malagu/lambda-adapter
aws lambda 适配器组件,提供了部署到 lambda 平台上的能力@malagu/vercel-adapter
Vercel 平台适配器组件,提供了部署到 Vercel 平台上的能力@malagu/express-adapter
Express 适配器组件,提供了部署到传统服务器上的能力@malagu/oauth2-core
:OAuth2.0 核心组件,提供了基于 OAuth2.0 授权与 OIDC 认证核心逻辑抽象@malagu/oauth2-jose
OAuth2.0 JOSE 组件,提供了对 JOSE 框架的支持@malagu/oauth2-client
:OAuth2 客户端组件,提供了 OAuth2.0 授权和 OIDC 认证的客户端能力@malagu/authing
Authing 集成组件,提供了基于 Authing 平台认证与授权的客户端能力@malagu/widget
前端 Widget 组件,提供了前端主题、国际化、Widget 等等核心逻辑抽象@malagu/react
:React 集成组件,提供了对 React 前端框架的集成,零配置、可扩展和装饰器风格的路由配置能力@malagu/antd
:Antd 集成组件,提供了 Antd 前端框架开箱即用的能力@malagu/grommet
Grommet 集成组件,提供了 Grommet 前端框架开箱即用的能力@malagu/material-ui
Material UI 集成组件,提供了 Material UI 前端框架开箱即用的能力@malagu/shell
Shell 组件,提供了可扩展、开箱即用的主框架页面@malagu/cloud
云基础组件,提供多云抽象,屏蔽不同云厂商的云服务底层差异@malagu/oss
阿里云 oss 服务组件,提供对象存储服务相关操作的实现@malagu/cos
腾讯云 cos 服务组件,提供对象存储服务相关操作的实现@malagu/s3
亚马逊云 s3 服务组件,提供对象存储服务相关操作的实现@malagu/puppeteer
:Puppeteer 集成组件,基于对象存储服务实现 Puppeteer 的集成@malagu/config
: 配置组件,提供运行时组件属性配置能力@malagu/eslint
: 代码风格检查插件@malagu/pwa
:PWA 插件@malagu/compression
: 前端静态文件压缩插件@malagu/cloud-plugin
: 云厂商基础插件,提供了关于云厂商的通用能力,比如支持 AKSK 等参数的配置和查看功能@malagu/code-loader-plugin
: 代码加载插件,提供了对编译后的代码通用加载能力@malagu/fc-plugin
: 阿里云函数计算插件,集成阿里云函数计算,提供部署、查看等能力@malagu/lambda-plugin
: AWS Lambda 插件,集成 AWS Lambda,提供部署、查看等能力@malagu/next-plugin
: Next.js 插件,提供 Next.js 框架项目的构建能力,让 Next.js 也能使用 Malagu CLI 进行部署,目前支持阿里云函数计算、腾讯云函数@malagu/node-plugin
: Node.js 插件,提供 Node.js 项目通用构建能力。@malagu/node-runtime-plugin
: Node.js 运行时插件,提供自定义 Node.js 运行时能力@malagu/scf-plugin
: 腾讯云函数插件,集成腾讯云函数,提供部署、查看等能力@malagu/static-plugin
: 静态网站插件,提供静态网站项目通用构建能力,Malagu 支持 React、Vue、angular 等等前端项目一键部署能力,是通过静态网站插件完成@malagu/cli-service
: 命令行服务插件,提供了 Node.js 后端和前端统一的运行、构建能力,以及通用部署抽象
其他非组件模块
@malagu/cli-common
: 命令行集成模块,主要提供组件加载和一些通用的工具类@malagu/cli-runtime
: 命令行运行时模块,主要包含与运行时管理相关的命令@malagu/cli
: 命令行模块,提供 Malagu CLI 所有能力,提供一个应用生命周期基本都会用到的命令实现与抽象,比如初始化、运行、构建、部署、配置、查看等等。大部份的命令只是抽象,命令的具体有特定的组件提供。比如构建与运行是由 @malagu/cli-service 插件提供@malagu/ext-scripts
: 脚本模块,提供了组件编译、测试、Lint 等通用脚本@malagu/frameworks
: 框架适配模块,Malagu CLI 不仅可以构建、运行、部署 Malagu 应用框架,还可以是非 Malagu 框架的应用。比如 Next.js、Koa.js、Express.js、Nest.js 等数十款框架,未来会持续适配更多框架
说明:插件型组件,主要在应用的编译时使用,是对命令工具能力上的扩展。