midway

πŸ” A Node.js Serverless Framework for front-end/full-stack developers. Build the application for next decade. Works on AWS, Alibaba Cloud, Tencent Cloud and traditional VM/Container. Super easy integrate with React and Vue. 🌈

7405
575
TypeScript

Midway Logo

A Node.js framework for building Serverless services, traditional server-side applications, microservices, and small programs.

GitHub license GitHub tag Build Status Test Coverage lerna Known Vulnerabilities PRs Welcome Codacy Badge Backers on Open Collective Sponsors on Open Collective Gitpod Ready-to-Code Code Style: MidwayJS Leaderboard

Description

Midway is a Node.js framework for building Serverless Services, traditional server-side applications, microservices and small programs. It written by typescript, which uses the IoC injection mechanism to decouple the business logic of the application and make the development of large Node.js application easier and more natural.

Midway can use koa, express or EggJS as the basic web framework. It also provides basic solutions for independent use such as Socket.io, gRPC, Dubbo.js, and RabbitMQ.

In addition, Midway is also a Node.js serverless framework for front-end/full-stack developers. Build applications for the next decade. It can run on AWS, Alibaba Cloud, Tencent Cloud and traditional VM/container. Easily integrate with React and Vue. 🌈

Features

  • βœ”οΈŽ Sophisticated group Middleware Architecture and compatibility
  • βœ”οΈŽ Scalable plug-in capabilities and group plug-in Ecology
  • βœ”οΈŽ Good application layering and decoupling capability
  • βœ”οΈŽ Good development experience for the future
  • βœ”οΈŽ Support Egg plugins and koa middleware

Getting Started

Framework Ecosystem

Project Version Description
@midwayjs/web web-status Midway framework for EggJS
@midwayjs/koa koa-status Midway framework for Koa
@midwayjs/express express-status Midway framework for Express
@midwayjs/faas faas-status Midway framework for FaaS in Serverless environment
@midwayjs/rabbitmq rabbitmq-status Midway framework for rabbitMQ service
@midwayjs/socketio socketio-status Midway framework for Socket.io server
@midwayjs/grpc grpc-status Midway framework for gRPC service

Tool and Runtime Ecosystem

Project Version Description
@midwayjs/cli midway-cli-status Midway common cli tool
@midwayjs/faas-cli midway-faas-cli-status Midway faas cli tool
@midwayjs/runtime-engine runtime-engine-status Common basic Serverless runtime
@midwayjs/serverless-fc-starter serverless-fc-starter-status Alibaba Cloud FC function launcher
@midwayjs/serverless-scf-starter serverless-scf-starter-status Tencent Cloud SCF Function Launcher

Examples

See midway-examples.

Issues

Please make sure to read the Issue Reporting Checklist before opening an issue. Issues not conforming to the guidelines may be closed immediately.

Contributors

Please let us know how can we help. Do check out issues for bug reports or suggestions first.

To become a contributor, please follow our contributing guide.

License

The code in this project is released under the MIT License.

FOSSA Status