/steedos-project-template

华炎魔方项目模版,克隆后可开发自己的低代码应用。Project template for Steedos Platform 2.0

Primary LanguageJavaScript

华炎魔方模板项目

该项目是通过steedos cli命令行创建魔方项目时会自动生成的模板项目,比如执行npx create-steedos-app my-app会自动创建一个名为my-app的项目。

开发前准备

开通华炎魔方云服务

请按该 教程 开通华炎魔方云服务。

激活华炎魔方

请参考该 文档,准备好后续运行项目时激活华炎魔方依赖的两个环境变量。

注册GitPod账户

我们推荐使用GitPod来在线开发华炎魔方项目,这样可以免去安装开发环境的繁琐过程。 如果没有 Github 账户和 GitPod 账户,请分别注册并使用浏览器登录它们。

Fork项目

请Fork本项目到本地,后续我们使用GitPod在线开发Fork后的项目的话就可以把开发后的代码提交到Git仓库。

也可以执行以下命令来创建一个新项目,然后把该项目提交到Git仓库,而不是Fork本项目来创建自己的魔方项目。

npx create-steedos-app my-app 

运行项目

只要在浏览器中输入地址 https://gitpod.io/#{之前Fork下来的Git仓库地址}即可使用 Gitpod 启动远程开发环境,远程开发环境已经安装并初始化好必须的组件,包括 nodejs, mongodb, redis, vscode 等。

比如访问地址 https://gitpod.io/#https://github.com/steedos/steedos-project-template 即可在线运行该Git仓库项目,可以把#号后面的Git仓库地址换成您希望运行的任何华炎魔方项目的Git仓库地址。

在浏览器中打开项目后,会自动执行yarn指令安装项目依赖项,并自动执行yarn start指令运行项目。

第一次运行项目项目会在控制台看到提示“请配置环境变量STEEDOS_CLOUD_SPACE_ID和STEEDOS_CLOUD_API_KEY”,但是我们也可以看到项目运行起来后自动打开了一个浏览器窗口访问运行好的华炎魔方,只是因为没有激活华炎魔方所以没有账户可以登录使用。

请参考文档 激活华炎魔方 配置这两个环境变量,配置好后重启项目即可使用私有部署的华炎魔方初始账户登录使用。

开发项目

零代码开发

可以参考文档 如何创建自定义应用程序? 在界面上开发业务需求,开发完成后可以参考 同步元数据 把代码同步到 GitPod 本地,然后本地代码可以提交到 Git仓库中。

低代码开发

可以参考文档 开发人员快速向导 在GitPod中在线写代码来开发业务需求。

软件包

项目开发完成后,可以发布为软件包,发布后的软件包可以直接安装到测试环境或生产环境中直接使用,还可以在华炎魔方应用市场中定价售卖发布后的软件包,详细请参考教程 软件包发布与安装

目录说明

.steedos

该文件夹是一个独立的npm项目,在该项目中可以定义要在华炎魔方项目中引用哪些软件包。 这里定义的软件包都可以在“设置”应用的“应用程序->软件包”界面上看到,且在界面上手动安装的软件包会回写到该文件夹的相关配置文件中。

更多详情请参考文档:软件包发布与安装

.steedos/package.json

这是npm项目的配置文件,可以在dependencies中定义要安装哪些软件包到本地。

.steedos/steedos-packages.yml

在该文件中可以配置当前华炎魔方项目要引用哪些软件包,包括之前在package.json文件依赖项中定义的软件包也需要在这里引用才能生效。 每个软件包可以定义的属性说明如下:

'@steedos-labs/oa': # 软件包名称
  enable: true #是否启用该软件包
  version: 2.1.20 # 软件包版本号
  description: '' # 软件包备注
  local: false # 是否是本地项目下的软件包,只要不是安装到`.steedos/node_modules`文件夹下的软件包都应该设置为true
  path: .steedos/node_modules/@steedos-labs/oa #软件包所在文件目录,所有软件包都必须在这里填写软件包所在硬盘目录

.vscode

该文件夹中保存的是vscode编辑器的配置文件,其中setting.json文件中定义了低代码开发时,编写yaml配置文件需要符合的schemas规范。

jsreport-app

这是一个独立的 JsReport 项目,用于设计各种报表。详情请参考 JsReport报表开发向导

node-red-app

这是一个独立的 Node-Red 项目,可以通过可视化开发方式,连接SAP、用友、金蝶等主流业务系统及各种数据库,实现各种集成业务需求。详情请参考 与现有业务系统整合

services

该文件夹内存放的是华炎魔方微服务相关配置文件,目前内置三个微服务,另外每个软件包都要求以微服务形式加入到华炎魔方。

steedos-app

这是每个魔方项目内置的默认软件包文件夹,华炎魔方启动时会自动加载每个软件包中的元数据和相关代码。 使用华炎魔方 DX 工具同步元数据时,默认同步到此文件夹中,详情请参考 同步元数据

steedos-packages

当项目需要分包管理时,可以把各个软件包文件夹存放到该文件夹中,软件包开发完成后可以发布到NPM仓库中,也可以发布到华炎魔方应用市场售卖。 如果需要,也可以把第三方软件包复制到此文件夹中,华炎魔方启动时会自动加载其中每个软件包的元数据及相关代码。

storage

这是魔方项目存放附件到本地时,附件文件所在文件夹,您也可以选择把附件存入云服务,这样的话,该文件夹就始终是空的。

moleculer.config.js

使用moleculer运行服务时的配置文件。

.env

环境变量配置文件,可以配置端口、URL 等环境变量,与.env.local文件的主要区别是该文件可以提交到git仓库中。

.env.local

环境变量配置文件,用于保存本地环境的配置,会覆盖.env文件中的配置。 该文件中可以存放密钥等敏感信息,已加入到.gitignore文件清单,不会提交到git仓库中。

steedos-config.yml

华炎魔方配置文件,详情请参考文档 环境变量、系统参数配置向导

package.json

华炎魔方项目是一个标准的NPM项目,该文件用于配置项目依赖的 npm 包。 如果需要升级魔方平台内核版本,也是修改此文件,详情请参考文档 升级已有老版本项目