Skip to content
forked from 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. 🌈

License

Notifications You must be signed in to change notification settings

arleyGuoLei/midway

This branch is 2284 commits behind midwayjs/midway:main.

Folders and files

NameName
Last commit message
Last commit date
Jan 23, 2022
Jan 5, 2022
Feb 13, 2022
Feb 14, 2022
Feb 13, 2022
Feb 14, 2022
Apr 11, 2020
Jan 9, 2022
Jan 23, 2022
Apr 11, 2020
Sep 13, 2020
Feb 13, 2022
Jan 10, 2019
Dec 31, 2019
Jan 12, 2022
Jan 17, 2022
Jul 23, 2018
Feb 13, 2022
Feb 13, 2022
Feb 12, 2022
Jan 29, 2022

Repository files navigation

Midway Logo

Midway - 一个面向未来的云端一体 Node.js 框架

GitHub license GitHub tag Build Status Test Coverage lerna PRs Welcome Gitpod Ready-to-Code Code Style: MidwayJS

English | 简体中文

资源

特性

  • 🐘 全功能:支持 Web 应用/Serverless/FaaS/微服务/小程序后端等多种场景,基于装饰器和依赖注入开发企业级应用
  • 🐦 前端集成:全新的云端一体应用研发体验,零 API 调用,使用 "React Hooks " 风格一体研发
  • 🐴 跨平台:支持部署至普通 Server 或 Serverless/FaaS 环境
  • 🐶 扩展:组件化扩展能力,另外支持使用 Koa/Express/Egg.js 生态插件
  • 🐂 示例: 官方提供多种场景的示例代码,方便开发者快速上手
  • 🛡 TypeScript 全面支持

描述

Midway 是一个适用于构建 Serverless 服务,传统应用、微服务,小程序后端的 Node.js 框架。

Midway 可以使用 Koa,Express 或 Egg.js 作为基础 Web 框架。它还提供了独立使用的基本解决方案,例如 Socket.io,GRPC,Dubbo.js 和 RabbitMQ 等。

此外,Midway 也适用于前端/全栈开发人员的 Node.js 无服务器框架。构建下一个十年的应用程序。可在 AWS,阿里云,腾讯云和传统 VM /容器上运行。与 React 和 Vue 轻松集成。 🌈

Demo

使用装饰器开发 Web 应用

import { Controller, Get, Provide } from '@midwayjs/decorator';

@Provide()
@Controller('/')
export class HomeController {

  @Get('/')
  async home() {
    return `Welcome to midwayjs!`;
  }
}

使用函数开发全栈应用

后端代码 src/apis/lambda/index.ts

import { useContext } from '@midwayjs/hooks'

export async function getPath() {
  // 获取请求 HTTP Context
  const ctx = useContext()
  return ctx.path
}

前端调用 src/page/index.tsx

import { getPath } from './apis/lambda'

getPath().then((path) => {
  // 发送 GET 请求到 /api/getPath
  // 返回值: /api/getPath
  console.log(path)
})

快速上手

$ npm -v

# 如果是 npm v6
$ npm init midway --type=web my_midway_app

# 如果是 npm v7
$ npm init midway -- --type=web my_midway_app

## 进入项目路径
cd my_midway_app && npm run dev

文档和社区

官方示例

midway-examples

请访问 midway-examples.

社区优秀示例展示

1、Cool-Admin - 一个很酷的后台权限管理框架

image

VSC Plugin

答疑

群里会有热心的朋友,也会有新版本发布推送。钉钉扫码加入答疑群

二群

一群(已满)

贡献

请告知我们可以为你做些什么,不过在此之前,请检查一下是否有 已经存在的Bug或者意见

如果你是一个代码贡献者,请参考代码贡献规范。

谁在使用

image 你也想加 Logo ?可以点击 这里 添加。

License

我们的代码使用 MIT 协议,请放心使用。

FOSSA Status

About

🍔 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. 🌈

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 77.2%
  • Shell 18.4%
  • JavaScript 4.2%
  • Other 0.2%