Skip to content

Repository files navigation

Welcome to cli-kit 👋

npm versionpublish sizeinstall sizenode versiondocumentationMaintainedLicense

The scaffold demo for the future

原理:https://github.com/jsany/cli-theory

demo

Features

  • typescript
  • eslint、prettier、commitlint
  • local template
  • remote template
  • use config first

Prerequisites

  • node >=10

Config

when npm install in lifecyle of postinstall will copy .clikitrc.json to $HOME/.clikitrc.json, then use it first, you can edit this json file what you wanna

Fields

  • githubToken: String - personal github token, default is ''
  • localTemplates: Object - local template
    • name: String - it must root/templates first level subdirectory name
    • message: String - about this template description, it will appear in prompt
  • remoteTemplates: Object - remote template
    • name: String - it must repository(go rules detail)
    • message: String - about this template description, it will appear in prompt
    • bootstrap: Object - it will assign top default bootstrap
  • bootstrap: Object - it will run after project generate
    • npm: Array - npm cmd, like npm i
    • git: Array - git cmd, like git init
    • open: Array - open cmd(ide), like code .

.clikitrc.json default is:

{
"githubToken": "",
"localTemplates": [
{
"name": "template-a",
"message": "Project A(template-a)"
},
{
"name": "template-b",
"message": "Project B(template-b)"
}
],
"remoteTemplates": [
{
"name": "github:jsany/template-main#main",
"message": "The main project(template-main)"
},
{
"name": "github:jsany/template-secondary#main",
"message": "The secondary project(template-secondary)"
},
{
"name": "github:jsany/template-lerna#main",
"message": "The mono project(template-lerna)",
"bootstrap": {
"npm": ["yarn"]
}
}
],
"bootstrap": {
"npm": ["npm install"],
"git": ["git init -b main"],
"open": ["code ."]
}
}

Usage

Install

git clone https://github.com/jsany/cli-kit.git
cd cli-kit && yarn install

Build

yarn compile

Link

yarn link

It already publish to npm, so you can npm i -g @jsany/cli-kit instead of above step, of course it is suggested as template or demo, base it diy yourself

cli-kit init
cli-kit info
cli-kit config

Show your support

Give a ⭐️ if this project helped you!


This README was generated with ❤️ by readme-md-generator

About

🔨 The typescript scaffold demo for the future

Topics

Resources

Stars

6 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages