猕猴桃Node.js内核框架

猕猴桃的轻巧 REST API 开发体验,真的挺适合前端同学快速上手的。整个框架只靠 Node.js 内核,不需要 Express 那套复杂逻辑,搭配 TypeScript 用起来还挺顺滑的。

类型注解的自动推导加上装饰器的方式,写起来就像在组织类,逻辑清晰,结构也舒服。比如你要写个user-controller.ts控制器,直接定义方法,用@Get@Post一装饰,路由就搞定了,代码干净又直观。

安装也简单:

npm install kiwi-server --save
npm install kiwi-server-cli -g
搞定后,CLI 一跑就能自动生成基础骨架,连tsconfig.json怎么配都帮你想好了。如果你还开着emitDecoratorMetadataexperimentalDecorators,那运行效率会更顺。

适合什么人?如果你是前端出身、写 TS 比较多,又想快速搭个 REST API 试试水,那这套还蛮合适的。不用太操心中间件配置,不用折腾复杂的依赖关系,响应快,代码少,逻辑清,试一试也没啥损失。

哦对了,和MongoDBJWT这些配合也还挺顺的,跟node-rem这种老派方案比,它轻多了。如果你还在用 Express 那一套手撸路由,也许可以考虑换个思路。

如果你平时写 React、用 TypeScript 当主力,那整合起来会自然。项目刚起步或者临时需要个后台接口,也不用太重。

zip
kiwi-master.zip 预估大小:62个文件
folder
kiwi-master 文件夹
folder
src 文件夹
file
index.ts 7KB
file
validators.ts 907B
folder
decorators 文件夹
file
isObject.ts 314B
file
queryParam.ts 427B
file
get.ts 375B
file
param.ts 448B
file
middlewareBefore.ts 317B
file
jsonController.ts 288B
file
isArray.ts 328B
file
put.ts 378B
file
authorize.ts 482B
file
body.ts 426B
file
middlewareAfter.ts 314B
file
post.ts 382B
file
delete.ts 384B
file
headerParam.ts 433B
folder
helpers 文件夹
file
parser.ts 639B
file
events.ts 44B
folder
types 文件夹
file
types.ts 786B
folder
resources 文件夹
folder
documentation-ui 文件夹
file
swagger-ui-standalone-preset.js.map 1.8MB
file
index.html 1KB
file
swagger-ui.js.map 1.23MB
file
swagger-ui-bundle.js.map 5.42MB
file
swagger.json 5KB
folder
middlewares 文件夹
file
middleware.ts 153B
file
logMiddlware.ts 321B
file
errorMiddleware.ts 170B
file
docMiddleware.ts 2KB
file
corsMiddlware.ts 1KB
folder
metadata 文件夹
file
metadata.ts 635B
folder
types 文件夹
file
metadata.types.ts 805B
file
metadataStorage.ts 10KB
folder
.vscode 文件夹
file
launch.json 1KB
file
tasks.json 308B
file
kiwi.png 294KB
file
.travis.yml 113B
file
gulpfile.js 1KB
file
tsconfig.json 429B
file
.prettierrc 162B
folder
samples 文件夹
folder
environments 文件夹
file
environment.ts 115B
file
environment.prod.ts 48B
folder
models 文件夹
file
models.ts 479B
file
utils.ts 118B
folder
controllers 文件夹
file
test-controller3.ts 413B
file
test-controller.ts 2KB
file
test-controller2.ts 509B
folder
user 文件夹
file
user-controller.ts 2KB
file
auxiliaryFunctions.ts 94B
folder
middlewares 文件夹
file
user-middleware.ts 453B
file
test-middlware2.ts 409B
file
test-middlware.ts 406B
folder
tests 文件夹
file
middlewares.test.ts 2KB
file
controllers.test.ts 7KB
file
load.test.js 733B
file
authentication.test.ts 1003B
file
metadataStorage.test.ts 2KB
file
server.ts 1KB
file
README.md 10KB
file
.editorconfig 279B
file
.gitignore 121B
file
package-lock.json 231KB
file
package.json 2KB
...
zip 文件大小:2.39MB