https://github.com/midwayjs/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. 🌈
https://github.com/midwayjs/midway
aliyun aws azure cloud dependency-injection-container enterprise framework ioc midway mircoservices react serverless serverless-framework typescript vue web
Last synced: 6 days ago
JSON representation
🍔 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. 🌈
- Host: GitHub
- URL: https://github.com/midwayjs/midway
- Owner: midwayjs
- License: mit
- Created: 2018-07-12T06:16:16.000Z (almost 7 years ago)
- Default Branch: main
- Last Pushed: 2025-04-05T18:59:57.000Z (9 days ago)
- Last Synced: 2025-04-06T17:07:18.911Z (8 days ago)
- Topics: aliyun, aws, azure, cloud, dependency-injection-container, enterprise, framework, ioc, midway, mircoservices, react, serverless, serverless-framework, typescript, vue, web
- Language: TypeScript
- Homepage: https://www.midwayjs.org/
- Size: 1.48 GB
- Stars: 7,523
- Watchers: 98
- Forks: 581
- Open Issues: 130
-
Metadata Files:
- Readme: README.en-US.md
- Changelog: CHANGELOG-v1.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome - midwayjs/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. 🌈 (TypeScript)
- awesome-egg - midway - A Node.js Serverless Framework for front-end/full-stack developers.   (仓库 / 框架)
- awesome-nodejs - Midway - A Node.js framework for building Serverless services, traditional server-side applications, microservices, and small programs.  (Repository / Web Frameworks)
- awesome-made-by-chinese - midway
- awesome-github-star - midway - 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. 🌈 | midwayjs | 6884 | (TypeScript)
- awesome-star-libs - midwayjs / midway
- awesome-koa - midway - 面向前端/全栈开发人员的 Node.js Serverless框架。 Midway 可以使用 koa、express 或 EggJS 作为基本的 web 框架。   (仓库 / 框架)
README
A Node.js framework for building Serverless services, traditional server-side applications, microservices, and small programs.
## 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
- Midway v2 [中文文档](https://www.yuque.com/midwayjs/midway_v2) 📚
- Midway Serverless [中文文档](https://www.yuque.com/midwayjs/faas) 📚
- Midway v1 [中文文档](https://www.yuque.com/midwayjs/midway_v1) 📚## Framework Ecosystem
| Project | Version | Description |
| ------------------------ | ------------------------------------------------------------------ | ----------------------------------------------------------------------- |
| [@midwayjs/web] | [![web-status]][web-package] | Midway framework for EggJS |
| [@midwayjs/koa] | [![koa-status]][koa-package] | Midway framework for Koa |
| [@midwayjs/express] | [![express-status]][express-package] | Midway framework for Express |
| [@midwayjs/faas] | [![faas-status]][faas-package] | Midway framework for FaaS in Serverless environment |
| [@midwayjs/rabbitmq] | [![rabbitmq-status]][rabbitmq-package] | Midway framework for rabbitMQ service |
| [@midwayjs/socketio] | [![socketio-status]][socketio-package] | Midway framework for Socket.io server |
| [@midwayjs/grpc] | [![grpc-status]][grpc-package] | Midway framework for gRPC service |[@midwayjs/faas]: https://github.com/midwayjs/midway/tree/2.x/packages/faas
[@midwayjs/web]: https://github.com/midwayjs/midway/tree/2.x/packages/web
[@midwayjs/koa]: https://github.com/midwayjs/midway/tree/2.x/packages/web-koa
[@midwayjs/express]: https://github.com/midwayjs/midway/tree/2.x/packages/web-express
[@midwayjs/rabbitmq]: https://github.com/midwayjs/midway/tree/2.x/packages/rabbitmq
[@midwayjs/socketio]: https://github.com/midwayjs/midway/tree/2.x/packages/socketio
[@midwayjs/grpc]: https://github.com/midwayjs/midway/tree/2.x/packages/faas[web-status]: https://img.shields.io/npm/v/@midwayjs/web.svg
[koa-status]: https://img.shields.io/npm/v/@midwayjs/koa.svg
[express-status]: https://img.shields.io/npm/v/@midwayjs/express.svg
[faas-status]: https://img.shields.io/npm/v/@midwayjs/faas.svg
[rabbitmq-status]: https://img.shields.io/npm/v/@midwayjs/rabbitmq.svg
[socketio-status]: https://img.shields.io/npm/v/@midwayjs/socketio.svg
[grpc-status]: https://img.shields.io/npm/v/@midwayjs/grpc.svg[web-package]: https://npmjs.com/package/@midwayjs/web
[koa-package]: https://npmjs.com/package/@midwayjs/koa
[express-package]: https://npmjs.com/package/@midwayjs/express
[faas-package]: https://npmjs.com/package/@midwayjs/faas
[rabbitmq-package]: https://npmjs.com/package/@midwayjs/rabbitmq
[socketio-package]: https://npmjs.com/package/@midwayjs/socketio
[grpc-package]: https://npmjs.com/package/@midwayjs/grpc## Tool and Runtime Ecosystem
| Project | Version | Description |
| ------------------------ | ------------------------------------------------------------------ | ----------------------------------------------------------------------- |
| [@midwayjs/cli] | [![midway-cli-status]][midway-cli-package] | Midway common cli tool |
| [@midwayjs/faas-cli] | [![midway-faas-cli-status]][midway-faas-cli-package] | Midway faas cli tool |
| [@midwayjs/runtime-engine] | [![runtime-engine-status]][runtime-engine-package] | Common basic Serverless runtime |
| [@midwayjs/serverless-fc-starter] | [![serverless-fc-starter-status]][serverless-fc-starter-package] | Alibaba Cloud FC function launcher |
| [@midwayjs/serverless-scf-starter] | [![serverless-scf-starter-status]][serverless-scf-starter-package] | Tencent Cloud SCF Function Launcher |[@midwayjs/cli]: https://github.com/midwayjs/cli/tree/master/packages/cli
[@midwayjs/faas-cli]: https://github.com/midwayjs/cli/tree/serverless/packages/faas-cli
[@midwayjs/runtime-engine]: https://github.com/midwayjs/midway/tree/2.x/packages-serverless/runtime-engine
[@midwayjs/serverless-fc-starter]: https://github.com/midwayjs/midway/tree/2.x/packages-serverless/serverless-fc-starter
[@midwayjs/serverless-scf-starter]: https://github.com/midwayjs/midway/tree/2.x/packages-serverless/serverless-scf-starter[midway-cli-status]: https://img.shields.io/npm/v/@midwayjs/cli.svg
[midway-faas-cli-status]: https://img.shields.io/npm/v/@midwayjs/faas-cli.svg
[runtime-engine-status]: https://img.shields.io/npm/v/@midwayjs/runtime-engine.svg
[serverless-fc-starter-status]: https://img.shields.io/npm/v/@midwayjs/runtime-engine.svg
[serverless-scf-starter-status]: https://img.shields.io/npm/v/@midwayjs/runtime-engine.svg[midway-cli-package]: https://npmjs.com/package/@midwayjs/cli
[midway-faas-cli-package]: https://npmjs.com/package/@midwayjs/faas-cli
[runtime-engine-package]: https://npmjs.com/package/@midwayjs/runtime-engine
[serverless-fc-starter-package]: https://npmjs.com/package/@midwayjs/serverless-fc-starter
[serverless-scf-starter-package]: https://npmjs.com/package/@midwayjs/serverless-scf-starter## Examples
See [midway-examples](https://github.com/midwayjs/midway-examples).
## Issues
Please make sure to read the [Issue Reporting Checklist](CONTRIBUTING.md#reporting-new-issues) 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](https://github.com/midwayjs/midway/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](LICENSE).
[](https://app.fossa.com/projects/git%2Bgithub.com%2Fmidwayjs%2Fmidway?ref=badge_large)