组件

这边是Malagu各个组件的文档,你可以在这里找到你需要的组件的文档。

核心

查看Malagu核心组件@malagu/core等的文档。

CLI

使用命令行构建运行部署应用。

后端

@malagu/web等的文档,偏向于后端开发。

前端

结合ReactVue等前端框架开发应用。

数据库

@malagu/typeorm等的文档,提供数据库操作相关的能力。

安全

@malagu/security的文档,提供认证与授权相关的能力。

缓存

通过集成cache-manager库实现的缓存,让缓存更加简单、与业务代码解耦。

静态资源

通过与serve-static库结合实现静态资源的访问,让您的应用程序更加完善。

基础组件

组件可以基于一个基础组件提供高阶功能。在实现我们的组件的时候,我们可以通过属性配置、依赖注入动态替换等机制等方式扩展基础组件,从而提供高阶的功能。

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 等数十款框架,未来会持续适配更多框架

说明:插件型组件,主要在应用的编译时使用,是对命令工具能力上的扩展。


Copyright © 2024 Zero (github@groupguanfang) 粤ICP备2023102563号