超好用项目代码模版管理脚手架~

2024-05-10 13:52

本文主要是介绍超好用项目代码模版管理脚手架~,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

introduction

最近开发并且开源了一款管理项目模板的脚手架cooker-cli,可以帮助你管理你的项目代码模版。

具体介绍如下,

cooker-cli

cooker-cli 能够快速生成你能想象得到的各种模版项目:

  • 前端:vue2, vue3, react, mini-program...

  • 客户端: iOSAndroid...

  • 后端:JavaPHPGo...

  • ...

Install

$ npm install -g cooker-cli

What

这个脚手架的用途是帮助你管理模版项目,模版项目需要你自己在模版库中DIY,从而在后续的使用中快速生成你要的模版项目。

Why

根据以往业务的经验,即使在这个脚手架中提供了模版,也满足不了大多数人的需求。因为对于日益更新的技术栈,项目可以有多种多样的库搭配组合,排列组合之下,产出的模版何其多也(^o^)/~

并且即使有提供了模版,如果不能持续迭代,要不了多久,也就废弃了。所以,不如将这个功能放给使用者,这样可以使用者可以DIY项目模版,方便随时调整和迭代,从而不被脚手架所限制。

Example

  • 创建项目-演示使用

$ cooker-cli create <project-name>
✔ 正在获取模版列表...
? 选择你要的模版 (Use arrow keys)
❯ h5-template-vue (h5的vue项目模版)h5-template-react (h5的react项目模版)pc-template-vue (pc的vue项目模版)pc-template-react (pc的react项目模版)minProgram-template (小程序项目模版)----------------------------------
? 选择你要的模版 h5-template-vue (h5的vue项目模版)
✔ 正在获取模版版本信息...
? 选择你要的模版版本 (Use arrow keys)
❯ vue2-jsvue2-vuex-jsvue3-jsvue3-ts----------------------------------⠏ 正在下载资源...----------------------------------
✔ 下载完成~
  • 配置你自己的模版

    1.如果你使用github或者gitee来存放你的模板库,可以按照以下流程配置

    2.如果你使用本地私有gitlab来存放你的模板库,可以在gitlab库中创建一个组(group),在这个组(group)中存放你的模板集合,跳过步骤1、步骤2.。

    Tip:组id(groupId)为作为脚手架配置项gitlabGroupId

    • 1.你需要拥有一个github/gitee账号

    • 2.注册组织机构账号,在github/gitee账号内即可免费注册完成

      • 步骤如下

      • create new... --> New Organizational --> 后面按照提示完成注册即可(该操作为github,gitee也有类似方方式创建)

      • 得到机构名称 => 为了方便,统一称作 org

    • 3.在你创建的机构下,创建你的模版,这个创建的模版你将在这里看到

      这里的模版可以理解为模版大类,比如pc的vue项目、pc的react项目、h5的vue项目、h5的react项目、小程序项目

      ✔ 正在获取模版列表...
      ? 选择你要的模版 (Use arrow keys)
      ❯ h5-template-vue (h5的vue项目模版)h5-template-react (h5的react项目模版)pc-template-vue (pc的vue项目模版)pc-template-react (pc的react项目模版)minProgram-template (小程序项目模版)
    • 4.按照你自己的分类创建完成多个模版以后,进入其中一个模版项目,

    • 5.此时,你可以通过分支(branches)或者标记(tags)来创建模版对应的多个版本,你将在这里看到

      这里的模版版本可以理解为模版大类下的细分,比如pc的vue项目大类下,分为:vue2项目、vue3项目、使用vuex的项目、使用ts的项目等等,可以更加实际业务场景自己去细分

      ? 选择你要的模版版本 (Use arrow keys)
      ❯ vue2-jsvue2-vuex-jsvue3-jsvue3-ts
    • 6.做完以后操作以后,你就可以去修改cooker-cli的配置文件了,在开始之前可以先了解一下内容

      查看配置信息: cooker-cli config -show 修改配置信息: cooker-cli config --set <key> <value>

      恢复默认配置信息: cooker-cli config --reset

    • 7.1如果你使用github/gitee,将配置中的组织名称,修改成你自己创建的org

      # organization-name 默认值: niu-fly,为演示项目
      $ cooker-cli config --set=org <your github organization-name>
    • 7.2如果你使用gitlab,将你的组(group)的id,配置到脚手架中

      # organization-name 默认值: niu-fly,为演示项目
      $ cooker-cli config --set=gitlabGroupId <your gitlab groupId>
    • 8.如果你在步骤5中采用tags来管理版本,那么你需要进行下面的配置

      # mode 默认值: branches
      $ cooker-cli config --set=mode tags
    • 9.如果你使用gitee,那么你需要在gitee界面,生成你的access-token,配置到脚手架中

      $ cooker-cli config --set=giteeToken <your gitee access-token>
    • 10.如果你使用github/gitee,做完以上操作,就已经完成了所有配置。你可以自由搭建的模版库了(^o^)/~

    • 11.如果你使用本地gitlab,还需要完成一下配置

      # 配置本地gitlab域名
      $ cooker-cli config --set=gitlabDomain <your gitlab Domain>
      # 配置本地gitlab域名
      $ cooker-cli config --set=gitlabDomain <your gitlab Domain>
      # 配置本地gitlab-token
      $ cooker-cli config --set=gitlabToken <your gitlab token>
    • 12.所有配置都已完成,恭喜(^o^)/~

Usage

Usage: cooker-cli <command> [option]
​
用于创建一个模版前端项目
​
Options:-V, --version                output the version number-h, --help                   display help for command
​
Commands:create [options] <app-name>  开始创建项目,项目名称<app-name>config [options] [value]     添加、修改、删除配置项help [command]               display help for command
​
Run cooker-cli <command> --help 查看更多命令信息

Feat

  1. ✅ 支持github

  2. ✅ 支持gitee

  3. ✅ 支持gitlab

TODO

...

Resource

  • GitHub - super-Sun/cooker-cli: 脚手架,快速创建模版项目

LICENSE

MIT

[npm]  https://img.shields.io/npm/v/cooker-cli.svg 

[npm-url]  https://npmjs.com/package/cooker-cli 

[node]  https://img.shields.io/node/v/cooker-cli.svg 

[node-url]  https://nodejs.org 

这篇关于超好用项目代码模版管理脚手架~的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/976623

相关文章

Nginx服务器部署详细代码实例

《Nginx服务器部署详细代码实例》Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,:本文主要介绍Nginx服务器部署的相关资料,文中通过代码... 目录Nginx 服务器SSL/TLS 配置动态脚本反向代理总结Nginx 服务器Nginx是一个‌高性

HTML5的input标签的`type`属性值详解和代码示例

《HTML5的input标签的`type`属性值详解和代码示例》HTML5的`input`标签提供了多种`type`属性值,用于创建不同类型的输入控件,满足用户输入的多样化需求,从文本输入、密码输入、... 目录一、引言二、文本类输入类型2.1 text2.2 password2.3 textarea(严格

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

解决idea启动项目报错java: OutOfMemoryError: insufficient memory

《解决idea启动项目报错java:OutOfMemoryError:insufficientmemory》:本文主要介绍解决idea启动项目报错java:OutOfMemoryError... 目录原因:解决:总结 原因:在Java中遇到OutOfMemoryError: insufficient me

MyBatis中的两种参数传递类型详解(示例代码)

《MyBatis中的两种参数传递类型详解(示例代码)》文章介绍了MyBatis中传递多个参数的两种方式,使用Map和使用@Param注解或封装POJO,Map方式适用于动态、不固定的参数,但可读性和安... 目录✅ android方式一:使用Map<String, Object>✅ 方式二:使用@Param

SpringBoot实现图形验证码的示例代码

《SpringBoot实现图形验证码的示例代码》验证码的实现方式有很多,可以由前端实现,也可以由后端进行实现,也有很多的插件和工具包可以使用,在这里,我们使用Hutool提供的小工具实现,本文介绍Sp... 目录项目创建前端代码实现约定前后端交互接口需求分析接口定义Hutool工具实现服务器端代码引入依赖获

python项目环境切换的几种实现方式

《python项目环境切换的几种实现方式》本文主要介绍了python项目环境切换的几种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 如何在不同python项目中,安装不同的依赖2. 如何切换到不同项目的工作空间3.创建项目

SpringBoot项目整合Netty启动失败的常见错误总结

《SpringBoot项目整合Netty启动失败的常见错误总结》本文总结了SpringBoot集成Netty时常见的8类问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、端口冲突问题1. Tomcat与Netty端口冲突二、主线程被阻塞问题1. Netty启动阻