Malagu Serverless First渐进式应用开发框架
Malagu 是基于 TypeScript 的 Serverless First、组件化、平台无关的渐进式应用框架。
特征
- 约定大于配置,零配置,开箱即用
- TypeScript 版 Spring Boot
- Serverless First
- 平台不锁定
- 支持前后端一体化,前端框架不锁定
- 组件化,渐进式
- 命令行工具插件化
- 依赖注入
- 面向切面编程(AOP)
- 集成了流行的 ORM 框架,使用装饰器声明式事务管理
- 支持 OIDC 认证
- 支持 OAuth2 授权
- 使用 rxjs 管理状态
- 提供 REST 和 RPC 两种接口风格
Malagu 名字由来:在我的家乡,谐音“吗啦咕”是小石头的意思,小石头堆砌起来可以建成高楼大厦、道路桥梁,而 Malagu 组件编排可以实现千变万化的应用。
快速开始
# 安装命令行工具 npm install -g yarn npm install -g @malagu/cli # 初始化 malagu init project-name cd project-name # 进入项目根目录 # 运行 malagu serve # 部署 malagu deploy
文档
依赖注入
// 类对象注入 @Component() export class A { } @Component() export class B { @Autowired() protected a: A; } // 配置属性注入 @Component() export class C { @Value('foo') // 支持 EL 表达式语法,如 @Value('obj.xxx')、@Value('arr[1]') 等等 protected foo: string; }
数据库操作
import { Controller, Get, Param, Delete, Put, Post, Body } from '@malagu/mvc/lib/node'; import { Transactional, OrmContext } from '@malagu/typeorm/lib/node'; import { User } from './entity'; @Controller('users') export class UserController { @Get() @Transactional({ readOnly: true }) list(): Promise<User[]> { const repo = OrmContext.getRepository(User); return repo.find(); } @Get(':id') @Transactional({ readOnly: true }) get(@Param('id') id: number): Promise<User | undefined> { const repo = OrmContext.getRepository(User); return repo.findOne(id); } @Delete(':id') @Transactional() async remove(@Param('id') id: number): Promise<void> { const repo = OrmContext.getRepository(User); await repo.delete(id); } @Put() @Transactional() async modify(@Body() user: User): Promise<void> { const repo = OrmContext.getRepository(User); await repo.update(user.id, user); } @Post() @Transactional() create(@Body() user: User): Promise<User> { const repo = OrmContext.getRepository(User); return repo.save(user); } }
评论
BDF3渐进式企业级开发框架
BDF3是基于SpringBoot组件化的渐进式企业级开发框架。 提供一系列企业级通用模块功能,使用BDF3框架在业务项目,我们可以直接专注到业务功能模块的开发。欢迎大家联系我们:技术交流、商业合作、
BDF3渐进式企业级开发框架
0
Safe.jsJavaScript 的渐进式快速开发框架
Safe.js - JavaScript的渐进式快速开发框架Safe.js是一款能够有效提升开发效率
Safe.jsJavaScript 的渐进式快速开发框架
0
Safe.jsJavaScript 的渐进式快速开发框架
Safe.js-JavaScript的渐进式快速开发框架Safe.js是一款能够有效提升开发效率和减少开发成本的框架!他极其轻巧,未经gzip压缩之前仅有5kb他极其快速,1ms的执行速度超越了99%
Safe.jsJavaScript 的渐进式快速开发框架
0
wxa.js渐进式小程序开发框架
wxa.js 是一个轻量级的渐进式小程序开发框架,专注于小程序原生开发,提供更好的工程化、代码复用能力,提高开发效率并改善开发体验。极速上手,零配置,可无痛迁移。wxa框架优势真正零成本接入原生小程序
wxa.js渐进式小程序开发框架
0