🚀 CloudBase Framework is a front-end and back-end integrated deployment tool officially produced by CloudBase
No need to change the code, one-click hosting and deployment of the front and back ends, based on the Serverless architecture, accelerating access, flexible and free of operation and maintenance.
Official Website / Document / Community / Q&A
- Quick Start
- Project Example
- Plugin
- Configuration Example
- Overall Structure
- Roadmap
- Contribution Guide
- License
- Changelog
- Online Group
- Install CLI
npm install -g @cloudbase/cli@latest
- Login
cloudbase login
- Initialize an application
cloudbase init
- Deploy the application
cloudbase framework deploy
Deploy a project created by Vue CLI with one click
Cloud Development CloudBase Framework supports template projects and provides template projects in multiple languages and frameworks. You can create an out-of-the-box project with just one command, and integrate the workflow of development, construction, and deployment.
The template can be customized freely. You can create a template project in any language and framework according to your needs, and generate your initial project with one click through the template project. The original project can be easily transformed into a cloudbase template project. You only need to create one cloudbaserc.json, fill in the necessary configuration.
For more template related introduction, you can click to go
Cloud Development CloudBase Framework supports a plug-in mechanism and provides plug-ins for a variety of application frameworks and cloud resources. It only requires very little configuration or even zero configuration to integrate existing applications and cloud development CloudBase Framework framework.
The plug-in can handle the process of construction, deployment, development, and debugging of some independent units in the application. For example, the website plug-in can handle units such as static websites, and the node plug-in can handle node applications such as koa and express. Plug-ins can be used in combination.
The configuration of the plug-in is written in the cloudbaserc file. Currently, only JSON files are supported, and YAML will be supported in the future.
The configuration of the plug-in can be filled in manually or automatically generated. Currently, the front-end framework supports automatic identification and filling of plug-ins.
-
cloudbase init --without-template
generates project configuration· -
cloudbase framework deploy
automatically detects and generates plug-in configuration files and deploys
Plug-in | The latest version | Plug-in introduction | |
---|---|---|---|
@cloudbase/framework-plugin-website | One-click deployment of website applications | ||
@cloudbase/framework-plugin-node | One-click deployment of Node applications (supports low-level deployment as functions or serverless cloud applications) | ||
@cloudbase/framework-plugin-nuxt | One-click deployment of Nuxt SSR application | ||
@cloudbase/framework-plugin-function | One-click deployment function resources | ||
@cloudbase/framework-plugin-container | One-click deployment of cloud application container services | ||
@cloudbase/framework-plugin-dart | One-click deployment of Dart cloud applications | ||
@cloudbase/framework-plugin-database | One-click declarative deployment cloud development NoSQL cloud database | ||
@cloudbase/framework-plugin-next | One-click deployment of Next SSR application | ||
@cloudbase/framework-plugin-mp | One-click deployment of Wechat MiniProgram |
For example, a Vue full-stack project, including website front-end and cloud functions
You can manually create a cloudbaserc.json
under the project, fill in the following configuration file, and call cloudbase framework deploy
for deployment
Or run directly
-
cloudbase init --without-template
-
cloudbase framework deploy
for automatic detection and deployment
{
"envId": "{{envId}}",
"framework": {
"plugins": {
"client": {
"use": "@cloudbase/framework-plugin-website",
"inputs": {
"buildCommand": "npm run build",
"outputPath": "dist"
}
},
"server": {
"use": "@cloudbase/framework-plugin-function",
"inputs": {
"functionRootPath": "cloudfunctions",
"functions": [
{
"name": "helloworld",
"config": {
"timeout": 5,
"envVariables": {},
"runtime": "Nodejs10.15",
"memorySize": 128
}
}
]
}
}
}
}
}
For more detailed configuration parameter descriptions, you can view the configuration documentation, click Go
Cloud Development CloudBase Framework is based on cloud development underlying resources and cloud development resource orchestration management, and it includes CLI tool layer, application framework layer and CI/CD layer as a whole.
- The CLI layer is adapted to mainstream application frameworks, can be seamlessly integrated with one click, and provides functions such as development and one-click deployment
- The application framework layer provides SDKs and components for different languages and frameworks, while abstracting the underlying cloud resources
- The CI/CD layer can implement functions such as cloud deployment, code platform integration, gray release, and upgrade rollback
🚀 Indicates the function that has been implemented
milestone | status |
---|---|
The core functions of the framework support plug-in mechanism and adapt to Cloudbase CLI | 🚀 |
Develop Website plugin to support the deployment of front-end static projects | 🚀 |
Automatic detection of front-end frameworks (mainstream frameworks such as Vue/React) Use Website plugin | 🚀 |
Develop Nuxt plugin to support Nuxt SSR project | 🚀 |
Develop Function plugin to support automatic function deployment | 🚀 |
Develop Node Api Plugin to support one-click deployment of Node applications | 🚀 |
Plug-in supports compiling into SAM description | 🚀 |
Automatically detect Express/ Koa and other mainstream Node frameworks using Node Api Plugin | |
Cloud development full stack framework support | |
Node Api Plugin supports modeling and code generation | |
Combine the CI/CD functions of Github Action, Coding and other platforms | |
Support part of the back-end containerized construction, providing another option for service functional construction | 🚀 |
Develop SAM Plugin to support SAM extension plug-ins, the framework can introduce third-party SAM extensions (such as CMS) | |
Develop Flutter Plugin to support one-click deployment of Flutter's Dart backend | 🚀 |
Welcome everyone to participate in the development of CloudBase Framework and contribute
Please refer to the development of the contribution of Development Contribution Guidelines document
Please refer to the changelog file for the version change log of CloudBase Framework
For open source agreement documents, please refer to Apache License 2.0
Wechat Group
|
QQ Group
|
Thanks goes to these wonderful people (emoji key):
Booker Zhao 🚇 |
Weijia Wang 💻 |
hengechang 💻 🚇 |
Zijie Zhou 💻 🔌 📢 |
erikqin 💻 🚧 💡 |
Hanqin 🐛 |
Zem 💻 |
magenta 📝 💻 |
TIANXIANG LAN 🖋 |
liyuanfeng 💻 |
白宦成 💻 |
易良 💻 |
Sherry Zhang 💻 |
RealyBig 💻 |
Saiya 📢 🐛 |
This project follows the all-contributors specification. Contributions of any kind welcome!