egg-init

脚手架

1
2
3
4
5
6
7
8
9
10
$ npm i egg-init -g
// 初始化命令
$ egg-init
// 选择所需的模板
> simple - Simple egg app boilerplate
sequelize - egg app with sequelize
ts - Simple egg && typescript app boilerplate
empty - Empty egg app boilerplate
plugin - egg plugin boilerplate
framework - egg framework boilerplate

各个模板对应目录

simple

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
│  .autod.conf.js
│ .eslintignore
│ .eslintrc
│ .gitignore
│ package.json
│ README.md
│ README.zh-CN.md

├─app
│ │ router.js
│ │
│ └─controller
│ home.js

├─config
│ config.default.js
│ plugin.js

└─test
└─app
└─controller
home.test.js

最为简洁,提供了路由和 controller 层 demo。

sequelize

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
│  .autod.conf.js
│ .eslintrc
│ .gitignore
│ .sequelizerc
│ package.json
│ README.md

├─config
│ config.default.js
│ config.unittest.js
│ plugin.js

├─database
│ config.json

└─test
.setup.js
factories.js

自带 sequelize ORM 框架,包含对应插件的一系列依赖,没有路由。

ts

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
│  .autod.conf.js
│ .gitignore
│ package.json
│ README.md
│ tsconfig.json
│ tslint.json

├─app
│ │ router.ts
│ │
│ ├─controller
│ │ home.ts
│ │
│ └─service
│ Test.ts

├─config
│ config.default.ts
│ config.local.ts
│ config.prod.ts
│ plugin.ts

├─test
│ └─app
│ ├─controller
│ │ home.test.ts
│ │
│ └─service
│ Test.test.ts

└─typings
index.d.ts

TypeScript 版的 egg,包含路由及 controller 和 service 层。

empty

1
2
3
4
5
6
7
8
9
│  .autod.conf.js
│ .eslintrc
│ .gitignore
│ index.js
│ package.json
│ README.md

└─test
index.test.js

空,需要自己从头搭建。

plugin

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
│  .autod.conf.js
│ .eslintignore
│ .eslintrc
│ .gitignore
│ LICENSE
│ package.json
│ README.md
│ README.zh_CN.md

├─.github
│ PULL_REQUEST_TEMPLATE.md

├─config
│ config.default.js

└─test
│ init.test.js

└─fixtures
└─apps
└─init-test
│ package.json

├─app
│ │ router.js
│ │
│ └─controller
│ home.js

└─config
config.default.js

仅供插件使用,可以发布

framework

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
│  .autod.conf.js
│ .eslintrc
│ .gitignore
│ index.js
│ package.json
│ README.md

├─.github
│ PULL_REQUEST_TEMPLATE.md

├─app
│ ├─extend
│ │ application.js
│ │ context.js
│ │
│ └─service
│ test.js

├─config
│ config.default.js
│ plugin.js

├─lib
│ framework.js

└─test
│ framework.test.js

└─fixtures
└─example
│ package.json

├─app
│ │ router.js
│ │
│ └─controller
│ home.js

└─config
config.unittest.js

供自定义修改的框架,可以发布到 npm

本文结束,感谢您的阅读