create-steedos-app 3.0.2-beta.10 → 3.0.2-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import type { PackageManager } from './helpers/get-pkg-manager';
1
+ import type { PackageManager } from "./helpers/get-pkg-manager";
2
2
  export declare class DownloadError extends Error {
3
3
  }
4
4
  export declare function createApp({ appPath, packageManager, example, examplePath, typescript, }: {
@@ -23,20 +23,20 @@ class DownloadError extends Error {
23
23
  exports.DownloadError = DownloadError;
24
24
  async function createApp({ appPath, packageManager, example, examplePath, typescript, }) {
25
25
  let repoInfo;
26
- const template = 'default';
26
+ const template = "default";
27
27
  if (example) {
28
28
  let repoUrl;
29
29
  try {
30
30
  repoUrl = new URL(example);
31
31
  }
32
32
  catch (error) {
33
- if (error.code !== 'ERR_INVALID_URL') {
33
+ if (error.code !== "ERR_INVALID_URL") {
34
34
  console.error(error);
35
35
  process.exit(1);
36
36
  }
37
37
  }
38
38
  if (repoUrl) {
39
- if (repoUrl.origin !== 'https://github.com') {
39
+ if (repoUrl.origin !== "https://github.com") {
40
40
  console.error(`Invalid URL: ${chalk_1.default.red(`"${example}"`)}. Only GitHub repositories are supported. Please use a GitHub URL and try again.`);
41
41
  process.exit(1);
42
42
  }
@@ -51,7 +51,7 @@ async function createApp({ appPath, packageManager, example, examplePath, typesc
51
51
  process.exit(1);
52
52
  }
53
53
  }
54
- else if (example !== '__internal-testing-retry') {
54
+ else if (example !== "__internal-testing-retry") {
55
55
  const found = await (0, examples_1.existsInRepo)(example);
56
56
  if (!found) {
57
57
  console.error(`Could not locate an example named ${chalk_1.default.red(`"${example}"`)}. It could be due to the following:\n`, `1. Your spelling of example ${chalk_1.default.red(`"${example}"`)} might be incorrect.\n`, `2. You might not be connected to the internet or you are behind a proxy.`);
@@ -61,8 +61,8 @@ async function createApp({ appPath, packageManager, example, examplePath, typesc
61
61
  }
62
62
  const root = path_1.default.resolve(appPath);
63
63
  if (!(await (0, is_writeable_1.isWriteable)(path_1.default.dirname(root)))) {
64
- console.error('The application path is not writable, please check folder permissions and try again.');
65
- console.error('It is likely you do not have write permissions for this folder.');
64
+ console.error("The application path is not writable, please check folder permissions and try again.");
65
+ console.error("It is likely you do not have write permissions for this folder.");
66
66
  process.exit(1);
67
67
  }
68
68
  const appName = path_1.default.basename(root);
@@ -70,13 +70,13 @@ async function createApp({ appPath, packageManager, example, examplePath, typesc
70
70
  if (!(0, is_folder_empty_1.isFolderEmpty)(root, appName)) {
71
71
  process.exit(1);
72
72
  }
73
- const useYarn = packageManager === 'yarn';
73
+ const useYarn = packageManager === "yarn";
74
74
  const isOnline = !useYarn || (await (0, is_online_1.getOnline)());
75
75
  const originalDirectory = process.cwd();
76
76
  console.log(`Creating a new steedos app in ${chalk_1.default.green(root)}.`);
77
77
  console.log();
78
78
  process.chdir(root);
79
- const packageJsonPath = path_1.default.join(root, 'package.json');
79
+ const packageJsonPath = path_1.default.join(root, "package.json");
80
80
  let hasPackageJson = false;
81
81
  if (example) {
82
82
  try {
@@ -98,23 +98,23 @@ async function createApp({ appPath, packageManager, example, examplePath, typesc
98
98
  }
99
99
  catch (reason) {
100
100
  function isErrorLike(err) {
101
- return (typeof err === 'object' &&
101
+ return (typeof err === "object" &&
102
102
  err !== null &&
103
- typeof err.message === 'string');
103
+ typeof err.message === "string");
104
104
  }
105
- throw new DownloadError(isErrorLike(reason) ? reason.message : reason + '');
105
+ throw new DownloadError(isErrorLike(reason) ? reason.message : reason + "");
106
106
  }
107
- const ignorePath = path_1.default.join(root, '.gitignore');
107
+ const ignorePath = path_1.default.join(root, ".gitignore");
108
108
  if (!fs_1.default.existsSync(ignorePath)) {
109
- fs_1.default.copyFileSync(path_1.default.join(__dirname, '..', 'templates', template, 'gitignore'), ignorePath);
109
+ fs_1.default.copyFileSync(path_1.default.join(__dirname, "..", "templates", template, "gitignore"), ignorePath);
110
110
  }
111
- const tsconfigPath = path_1.default.join(root, 'tsconfig.json');
111
+ const tsconfigPath = path_1.default.join(root, "tsconfig.json");
112
112
  if (fs_1.default.existsSync(tsconfigPath)) {
113
- fs_1.default.copyFileSync(path_1.default.join(__dirname, '..', 'templates', 'typescript', 'next-env.d.ts'), path_1.default.join(root, 'next-env.d.ts'));
113
+ fs_1.default.copyFileSync(path_1.default.join(__dirname, "..", "templates", "typescript", "next-env.d.ts"), path_1.default.join(root, "next-env.d.ts"));
114
114
  }
115
115
  hasPackageJson = fs_1.default.existsSync(packageJsonPath);
116
116
  if (hasPackageJson) {
117
- console.log('Installing packages. This might take a couple of minutes.');
117
+ console.log("Installing packages. This might take a couple of minutes.");
118
118
  console.log();
119
119
  await (0, install_1.install)(root, null, { packageManager, isOnline });
120
120
  console.log();
@@ -124,27 +124,23 @@ async function createApp({ appPath, packageManager, example, examplePath, typesc
124
124
  console.log(chalk_1.default.bold(`Using ${packageManager}.`));
125
125
  const packageJson = {
126
126
  name: appName,
127
- version: '0.1.0',
127
+ version: "0.1.0",
128
128
  private: true,
129
129
  scripts: {
130
130
  start: "moleculer-runner services/*/package.service.js --hot --repl",
131
131
  repl: "moleculer-runner --repl",
132
- }
132
+ },
133
133
  };
134
- fs_1.default.writeFileSync(path_1.default.join(root, 'package.json'), JSON.stringify(packageJson, null, 2) + os_1.default.EOL);
134
+ fs_1.default.writeFileSync(path_1.default.join(root, "package.json"), JSON.stringify(packageJson, null, 2) + os_1.default.EOL);
135
135
  const installFlags = { packageManager, isOnline };
136
- const dependencies = [
137
- '@steedos/service-package-loader'
138
- ];
139
- const devDependencies = [
140
- 'moleculer-repl'
141
- ];
136
+ const dependencies = ["@steedos/server"];
137
+ const devDependencies = ["moleculer-repl"];
142
138
  if (typescript) {
143
- devDependencies.push('typescript');
139
+ devDependencies.push("typescript");
144
140
  }
145
141
  if (dependencies.length) {
146
142
  console.log();
147
- console.log('Installing dependencies:');
143
+ console.log("Installing dependencies:");
148
144
  for (const dependency of dependencies) {
149
145
  console.log(`- ${chalk_1.default.cyan(dependency)}`);
150
146
  }
@@ -153,7 +149,7 @@ async function createApp({ appPath, packageManager, example, examplePath, typesc
153
149
  }
154
150
  if (devDependencies.length) {
155
151
  console.log();
156
- console.log('Installing devDependencies:');
152
+ console.log("Installing devDependencies:");
157
153
  for (const devDependency of devDependencies) {
158
154
  console.log(`- ${chalk_1.default.cyan(devDependency)}`);
159
155
  }
@@ -162,14 +158,14 @@ async function createApp({ appPath, packageManager, example, examplePath, typesc
162
158
  await (0, install_1.install)(root, devDependencies, devInstallFlags);
163
159
  }
164
160
  console.log();
165
- await (0, cpy_1.default)(['**'], root, {
161
+ await (0, cpy_1.default)(["**"], root, {
166
162
  dot: true,
167
163
  parents: true,
168
- cwd: path_1.default.join(__dirname, '..', 'templates', template),
164
+ cwd: path_1.default.join(__dirname, "..", "templates", template),
169
165
  });
170
166
  }
171
167
  if ((0, git_1.tryGitInit)(root)) {
172
- console.log('Initialized a git repository.');
168
+ console.log("Initialized a git repository.");
173
169
  console.log();
174
170
  }
175
171
  let cdpath;
@@ -179,7 +175,7 @@ async function createApp({ appPath, packageManager, example, examplePath, typesc
179
175
  else {
180
176
  cdpath = appPath;
181
177
  }
182
- console.log(`${chalk_1.default.green('Success!')} Created ${appName} at ${appPath}`);
178
+ console.log(`${chalk_1.default.green("Success!")} Created ${appName} at ${appPath}`);
183
179
  console.log();
184
180
  }
185
181
  //# sourceMappingURL=create-app.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-app.js","sourceRoot":"","sources":["../src/create-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-app.js","sourceRoot":"","sources":["../src/create-app.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-steedos-app",
3
- "version": "3.0.2-beta.10",
3
+ "version": "3.0.2-beta.12",
4
4
  "keywords": [
5
5
  "react",
6
6
  "steedos"
@@ -49,5 +49,5 @@
49
49
  "engines": {
50
50
  "node": ">=14"
51
51
  },
52
- "gitHead": "35caa60431c6d4931e0d098b36af37945a3c0c6e"
52
+ "gitHead": "980c6c585aeffd2b82a100bbe6f6e7658fbe10da"
53
53
  }
@@ -1 +1,8 @@
1
- npx create-steedos-app my-project
1
+ PORT=5100
2
+ ROOT_URL=http://127.0.0.1:5100
3
+ TRANSPORTER=redis://127.0.0.1:6379
4
+ CACHER=redis://127.0.0.1:6379/1
5
+ MONGO_URL=mongodb://127.0.0.1:27017/steedos
6
+
7
+
8
+ DEVELOPER_STANDARD_OBJECTS=true
@@ -1,31 +1,92 @@
1
- # Steedos 项目模板
1
+ # Steedos Example App
2
2
 
3
- 华炎魔方提供了超越传统无代码平台的深度定制和开发能力,不仅允许没有编程背景的用户快速创建应用,还为有经验的开发人员提供了强大的工具和框架,使他们能够进行更复杂的自定义和集成。
3
+ This is an enterprise-grade low-code/no-code application built on the [Steedos Platform](https://www.steedos.com/).
4
4
 
5
- - [文档](https://docs.steedos.com)
5
+ This project was scaffolded using `create-steedos-app`. It provides a foundation for rapid metadata modeling, API extensions, and business logic development.
6
6
 
7
- # 快速向导
7
+ ## 🛠 Prerequisites
8
8
 
9
- ## 运行数据库
9
+ Before you begin, ensure you have the following installed in your development environment:
10
10
 
11
- 您可以在本地安装 mongodb redis,或者使用 docker 快速启动。
11
+ - **Node.js**: v22.0 or higher
12
+ - **MongoDB**: v7.0 or higher
13
+ - **Redis**:
14
+ - **Yarn**
12
15
 
13
- ```bash
14
- docker-compose up mongodb redis
15
- ```
16
+ ## 🚀 Quick Start
17
+
18
+ ### 1. Start Db Services
16
19
 
20
+ Make sure your MongoDB and Redis services are running. You can start them using the following commands:
17
21
 
18
- ## 运行 Steedos
22
+ ```bash
23
+ yarn start:db
24
+ ```
25
+ ### 2. Install Dependencies
19
26
 
20
- ### 安装依赖
27
+ Run the following command in the project root to install the required Node packages:
21
28
 
22
29
  ```bash
30
+ yarn install
23
31
  yarn
24
- yarn build
25
32
  ```
26
33
 
27
- ### 运行 Steedos
34
+ ### 3. Start the Server
35
+
36
+ Start the development server. Steedos will output the access URL in the console.
28
37
 
29
38
  ```bash
30
39
  yarn start
31
40
  ```
41
+
42
+ ### 4. Access the Application
43
+
44
+ Once the server starts successfully, open your browser and visit:
45
+ `http://localhost:5100` (Default port)
46
+
47
+
48
+ ## 📂 Project Structure
49
+
50
+ Here is an overview of the core file structure:
51
+
52
+ ```text
53
+ my-project/
54
+ ├── .env # Environment variables (Do not commit sensitive info)
55
+ ├── .env.local # Local environment overrides
56
+ ├── package.json # Project dependencies and scripts
57
+ ├── steedos-config.js # Core Steedos configuration
58
+ ├── steedos-packages/example-app/ # Core app directory
59
+ │ ├── main/
60
+ │ │ └── default/
61
+ │ │ ├── objects/ # Object definitions (Metadata)
62
+ │ │ ├── app/ # app definitions (Metadata)
63
+ │ └── package.json # Business package definition
64
+ ```
65
+
66
+ ## ⚙️ Configuration
67
+
68
+ Create or modify the `.env` file in the project root to configure the database connection and service ports:
69
+
70
+ ```shell
71
+ # Service Port
72
+ PORT=5100
73
+
74
+ # Database Connection (MongoDB)
75
+ MONGO_URL=mongodb://127.0.0.1:27017/steedos
76
+
77
+ # Root URL (Important for attachments and API callbacks)
78
+ ROOT_URL=http://localhost:5100
79
+
80
+ # Metadata Storage Directory
81
+ STEEDOS_STORAGE_DIR=./storage
82
+ ```
83
+
84
+ ## 💻 Development Guide
85
+
86
+ ### Exporting Metadata
87
+
88
+ If you modify configurations via the UI (Steedos Objects), you can sync changes back to your local code using the Steedos command line tools or the VS Code extension.
89
+ ## 📚 Resources
90
+
91
+ - [Steedos Documentation](https://docs.steedos.com/)
92
+ - [Steedos GitHub Repository](https://github.com/steedos/steedos-platform)
@@ -1,5 +1,5 @@
1
1
  {
2
- "name": "steedos-project-templates",
2
+ "name": "steedos-project-template",
3
3
  "version": "0.0.1",
4
4
  "private": true,
5
5
  "workspaces": [
@@ -0,0 +1,3 @@
1
+ # Steedos Example App
2
+
3
+ This is an enterprise-grade low-code/no-code application built on the [Steedos Platform](https://www.steedos.com/).
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "steedos-example-app",
3
+ "version": "0.0.1",
4
+ "description": "",
5
+ "main": "package.service.js",
6
+ "dependencies": {}
7
+ }
@@ -0,0 +1,21 @@
1
+ const project = require('./package.json');
2
+ const packageLoader = require('@steedos/service-package-loader');
3
+
4
+ module.exports = {
5
+ name: "example-service",
6
+
7
+ mixins: [packageLoader],
8
+
9
+ metadata: {
10
+ $package: {
11
+ name: project.name,
12
+ version: project.version,
13
+ path: __dirname,
14
+ isPackage: true
15
+ }
16
+ },
17
+ actions: {
18
+ },
19
+ events: {
20
+ }
21
+ }
@@ -1,19 +0,0 @@
1
- 微服务软件包
2
- ===
3
-
4
- 可以使用微服务方式扩展化验魔方。
5
-
6
- ## 启动服务
7
-
8
- ```sh
9
- yarn start:services
10
- ```
11
-
12
- 启动服务之后,为华炎魔方服务扩展了以下API
13
-
14
- - hello, 获取当前登录用户: http://127.0.0.1:5000/service/api/example-service/hello/jack
15
- - me, 获取当前登录用户: http://127.0.0.1:5000/service/api/example-service/me
16
-
17
- ## 参考
18
-
19
- - [Moleculer Nodejs](https://moleculer.services/zh/)
@@ -1,8 +0,0 @@
1
- {
2
- "name": "my-steedos-service",
3
- "version": "0.0.1",
4
- "description": "",
5
- "main": "package.service.js",
6
- "dependencies": {
7
- }
8
- }
@@ -1,88 +0,0 @@
1
- const project = require('./package.json');
2
- const packageLoader = require('@steedos/service-package-loader');
3
-
4
- module.exports = {
5
- name: "example-service",
6
-
7
- mixins: [packageLoader],
8
-
9
- metadata: {
10
- $package: {
11
- name: project.name,
12
- version: project.version,
13
- path: __dirname,
14
- isPackage: true
15
- }
16
- },
17
-
18
- actions: {
19
- hello: {
20
- // 使用微服务方式定义 API 接口。
21
- // 访问地址: GET /service/api/example-service/hello/:name
22
- rest: { method: 'GET', path: '/hello/:name' },
23
- handler(ctx) {
24
- return {
25
- data: 'Welcome ' + ctx.params.name
26
- }
27
- }
28
- },
29
- me: {
30
- rest: { method: 'GET', path: '/me' },
31
- // 在微服务中获取当前登录的用户信息
32
- async handler(ctx) {
33
- return ctx.meta.user
34
- }
35
- },
36
- // 在微服务中调用graphql查询数据库
37
- graphqlQuerySpaceUsers: {
38
- rest: { method: 'GET', path: '/graphql' },
39
- async handler(ctx) {
40
- return await this.broker.call('api.graphql', {
41
- query: `
42
- query {
43
- space_users(filters: ["user", "=", "${ctx.meta.user.userId}"]) {
44
- name
45
- organization__expand {
46
- name
47
- }
48
- }
49
- }
50
- `},
51
- // 如果查询 GraphQL 需要带上当前用户的权限,需要传入 user 属性。
52
- {
53
- meta: {
54
- user: ctx.meta.user
55
- }
56
- }
57
- )
58
- },
59
- },
60
- // 在微服务中调用objectql查询数据库, 需要 mixins: [require('@steedos/service-object-mixin')],
61
- objectqlQuerySpaceUsers: {
62
- rest: { method: 'GET', path: '/objectql' },
63
- async handler(ctx) {
64
- return await this.getObject('space_users').find(
65
- {
66
- filters: ['user', '=', ctx.meta.user.userId]
67
- },
68
- ctx.meta.user
69
- )
70
- }
71
- },
72
- // 使用微服务定义触发器
73
- spaceUsersBeforeUpdate: {
74
- trigger: { listenTo: 'space_users', when: ['beforeUpdate', 'beforeInsert']},
75
- async handler(ctx) {
76
- this.broker.logger.info('spaceUsersBeforeUpdate', ctx)
77
- }
78
- }
79
- },
80
- events: {
81
- "@space_users.updated": {
82
- handler(payload) {
83
- // 监听人员修改事件
84
- this.broker.logger.info(payload);
85
- }
86
- }
87
- }
88
- }