# kscpm
> 前端工程创建器，基于 yeoman 4.0。
> **node 版本推荐 <span style="color:red;font-size:16px">12.0</span> +**

### Installation
使用[npm](https://www.npmjs.com/) 安装[Yeoman](http://yeoman.io)、generator-kscpm 
```bash
npm install -g yo
npm install -g generator-kscpm
```
如果你不想用了 , 试试提一个[Issue](http://newgit.op.ksyun.com/ksyun-fe/kscpm/issues/new) , 实在不行的话 , 你还可以这样 
```bash
#uninstall shell
npm uninstall -g generator-kscpm
npm uninstall -g yo
```
### Usage

* 该模块包含初始化项目 , 与新建页面 , 组件等功能 , 支持Vue2/3 , Intact , Koa , Lib 类型

```bash
# 执行shell

yo kscpm #将会列出可选的所有创建器列表

yo kscpm:vue3:graphql # Vue3 + Graphql 前端项目（ Node16+ ）

yo kscpm:vue # Vue2.0前端项目

yo kscpm:vue3 # Vue3.0、TypeScipt4、Vuex4前端项目

yo kscpm:vue:ts #Vue2 、TypeScript

yo kscpm:page # Vue2 SPA

yo kscpm:component # Vue2 Component

yo kscpm:store # Vue2 vuex

yo kscpm:website # website类型

yo kscpm:tsNode # Node服务

yo kscpm:kpc:component # KPC1.0 模板工具

yo kscpm:intact #将会执行intact前端项目的创建

yo kscpm:ns #将会执行node server的创建

...

```
<!-- ![yo kscpm](detail.png) -->

生成项目后内部README.md有详细的`目录结构说明`,`使用说明`,`注意事项`
```
- ``
- `kscpm:vue3:graphql`      Vue3+Graphql
- `kscpm:intact`            Intact驱动的前端项目
- `kscpm:intact:component`  Intact组件 须在Intact前端项目根目录下执行 , 将会创建在`src/components`目录下
- `kscpm:intact:page`       Intact页面 须在Intact前端项目根目录下执行 , 将会创建在`src/pages`以及`src/router`目录下
- `kscpm:vue:component`     Vue组件 须在Vue前端项目根目录下执行 , 将会创建在`src/components`目录下
- `kscpm:vue:page`          Vue页面 须在Vue前端项目根目录下执行 , 将会创建在`src/pages`以及`src/router`目录下
- `kscpm:vue`               Vue驱动的前端项目 
- `kscpm:ns`                Koa驱动的NodeJS服务 
- `kscpm:vue:ts`            Vue+TypeScript驱动的前端项目
```

### 更新日志
- 2023.09 新增Vue3 + TS4 + Graphql 
- 2022.03 新增Vue3+TS4+VUEX4 ，支持装饰器写法
- 2021.01 Vue2+TS 支持装饰器
- 2021.09 新增Vue2+TS

### 各个项目涉及到技能
- Intact
- Vue2/3
- Koa
- Webpack4
- TypeScript
- Vuex
- Sass
- Stylus
- Less
- Eslint
- Git
- PM2
- Node
- NPM
- universal-router
- vue-loader
- Graphql
