最近把公司的 nodejs koa 後端項目用 ts 重構一遍。javascript
在搭建整個工程,好比集成 koa、typescript、jest 以及 eslint 的過程當中,仍是會遇到挺多配置性的問題的。前端
考慮到工程的複用性,我寫了一個 koa-ts-cli 腳手架,而且提供了三個工程模板:基本模板(koa-ts-base-template)、完整模板(koa-ts-full-template)、全棧模板(koa-ts-full-stack-template)。java
npm i -g koa-ts-cli
koats create myProject
# Choose your favorite template.
cd myProject
npm install
複製代碼
github 地址:github.com/SimpleCodeC…node
npm 包地址:www.npmjs.com/package/koa…mysql
注意:不一樣模板的運行方式可能略有不一樣,具體能夠看各個模板的文檔git
koats 提供了三個基於 ts 的模板。github
這是一個乾淨的 koa + ts + jest + eslint + apidoc + docker 工程模板,實現了最基本的 koa 中間件和配置等,若是你只須要一個基本的 koa + ts 工程配置,這個模板適合你。docker
模板地址: github.com/SimpleCodeC…typescript
這是一個比較完整的 koa + ts 工程結構,在 koa-ts-base-template 的基礎上,增長了以下功能:
模板地址: github.com/SimpleCodeC…
這是一個全棧的 koa + ts 工程結構,在 koa-ts-full-template 的基礎上,修改了一些工程配置,從而實現多工程的編譯。
此工程包含三個端:
模板地址: github.com/SimpleCodeC…
這三個模板的共同特色:
✓ koa v2
✓ Jest
✓ APIDOC
✓ Docker
✓ Eslint
✓ Husky
npm i -g koa-ts-cli
複製代碼
koats create myProject
# Choose your favorite template.
cd myProject
npm install
複製代碼
cd myProject
npm run dev
複製代碼
注意:不一樣模板的運行方式可能略有不一樣,具體能夠看各個模板的文檔
npm run build
cd myProject/dist
npm run prod
複製代碼
注意:不一樣模板的運行方式可能略有不一樣,具體能夠看各個模板的文檔
cd myProject
npm install
npm run build
sudo docker build -t koa-ts-api-server .
sudo docker run -it --name koa-ts-api-server -p 8080:8080 koa-ts-api-server
複製代碼
cd myProject
npm run test
複製代碼
若是有遇到問題,歡迎來提 issue!
若是此腳手架對您的工做、學習或者爬坑有幫助,請動動您的小手,給個 Star,Thanks!
github 地址:github.com/SimpleCodeC…
npm 包地址:www.npmjs.com/package/koa…