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

news2026/4/3 20:34:38

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-js
  vue2-vuex-js
  vue3-js
  vue3-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-js
        vue2-vuex-js
        vue3-js
        vue3-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.coloradmin.cn/o/1659618.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

安全数据交换系统哪个好?该如何选型?

安全数据交换系统是用于在不同网络或组织之间安全、高效地传输和共享数据的解决方案。安全数据交换系统对于任何需要处理敏感数据、确保数据安全、并满足合规要求的组织来说都是至关重要的。 这种系统通常用于以下目的&#xff1a; 1&#xff09;数据传输&#xff1a;允许用户…

Midjourney Imagine API 申请及使用

Midjourney Imagine API 申请及使用 申请流程 要使用 Midjourney Imagine API&#xff0c;首先可以到 Midjourney Imagine API 页面点击「Acquire」按钮&#xff0c;获取请求所需要的凭证&#xff1a; 如果你尚未登录或注册&#xff0c;会自动跳转到登录页面邀请您来注册和登…

【mysql】mysql导入导出数据详解

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

计算机毕业设计系列~~~基于SSM的宠物销售网站

目录 一、项目介绍 二、开题报告 三、项目截图 一、项目介绍 本项目是一款基于SSM的宠物销售网站&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的 Java 学习者。 1. 包含&#xff1a;项目源码、项目文档、数据库脚本、软件工具等所有资料 2. …

Web实时通信的学习之旅:WebSocket入门指南及示例演示

文章目录 WebSocket的特点1、工作原理2、特点3、WebSocket 协议介绍4、安全性 WebSocket的使用一、服务端1、创建实例&#xff1a;创建一个webScoket实例对象1.1、WebSocket.Server(options[&#xff0c;callback])方法中options对象所支持的参数1.2、同样也有一个加密的 wss:/…

llama.cpp制作GGUF文件及使用

llama.cpp的介绍 llama.cpp是一个开源项目&#xff0c;由Georgi Gerganov开发&#xff0c;旨在提供一个高性能的推理工具&#xff0c;专为在各种硬件平台上运行大型语言模型&#xff08;LLMs&#xff09;而设计。这个项目的重点在于优化推理过程中的性能问题&#xff0c;特别是…

【Oracle直播课】5月19日Oracle 19c OCM认证大师课 (附课件预览)

Oracle 19c OCM认证大师培训 - 课程体系 - 云贝教育 (yunbee.net) 部分课件预览 OCM部分课件预览 Oracle Database 19c Certified Master Exam (OCM) 认证大师 25 天 / 150课时 什么是Oracle 19c OCM&#xff1f; Oracle Certified Master (OCM)是Oracle认证大师&#xff0c;…

东南亚电商市场新趋势:自养号测评助力Shopee和Lazada卖家脱颖而出

在东南亚电商市场中&#xff0c;Shopee和Lazada无疑是两大巨头。对于卖家而言&#xff0c;如何在竞争激烈的平台上脱颖而出&#xff0c;提升产品曝光度和销量&#xff0c;一直是他们关注的焦点。而自养号测评作为一种有效的营销手段&#xff0c;正逐渐被越来越多的卖家所采用。…

经济学SSCI期刊,中科院3区,IF=2+,难度不大,收稿范围广泛!

一、期刊名称 Information Economics and Policy 二、期刊简介概况 期刊类型&#xff1a;SSCI 学科领域&#xff1a;经济学 影响因子&#xff1a;2.8 中科院分区&#xff1a;3区 出版方式&#xff1a;订阅模式/开放出版 版面费&#xff1a;选择开放出版需支付$3190 三、…

Spring Boot 中集成 EasyExcel 实现 Excel 文件读写操作

&#x1f341; 作者&#xff1a;知识浅谈&#xff0c;CSDN签约讲师&#xff0c;CSDN博客专家&#xff0c;华为云云享专家&#xff0c;阿里云专家博主 &#x1f4cc; 擅长领域&#xff1a;全栈工程师、爬虫、ACM算法 &#x1f492; 公众号&#xff1a;知识浅谈 &#x1f525; 微…

【QA】Java集合常用的函数

文章目录 前言Collection接口通用函数 | Collections工具类通用函数 | List接口 Set接口List接口ArrayListLinkedList Set接口TreeSetHashSetLinkedHashSet Map接口通用函数TreeMapHashMapLinkedHashMap 前言 本文介绍Java集合中常用的函数。 Collection接口 通用函数 | Co…

正点原子Linux学习笔记(七)在 LCD 上显示 png 图片

在 LCD 上显示 png 图片 21.1 PNG 简介21.2 libpng 简介21.3 zlib 移植下载源码包编译源码安装目录下的文件夹介绍移植到开发板 21.4 libpng 移植下载源码包编译源码安装目录下的文件夹介绍移植到开发板 21.5 libpng 使用说明libpng 的数据结构创建和初始化 png_struct 对象创建…

Mysql 8.0 -- 最新版本安装(保姆级教程)

Mysql 8.0 -- 最新版本安装&#xff08;保姆级教程&#xff09; ​​ 一&#xff0c;下载Mysql数据库&#xff1a; 官网链接&#xff1a;https://www.mysql.com/downloads/ 二&#xff0c;安装Mysql: 三&#xff0c;找到Mysql安装目录&#xff1a; 找到mysql安装目录&#xf…

Chronos:学习时间序列的大语言模型(代码解析)

前言 《Chronos: Learning the Language of Time Series》原文地址&#xff0c;Github开源代码地址Chronos&#xff1a;学习时间序列的大语言模型&#xff08;论文解读&#xff09;CSDN地址GitHub项目地址Some-Paper-CN。本项目是译者在学习长时间序列预测、CV、NLP和机器学习…

vue多选功能

废话不多说&#xff0c;直接上代码&#xff01;&#xff01;&#xff01; <template><div class"duo-xuan-page"><liv-for"(item, index) in list":key"index"click"toggleSelection(item)":class"{ active: sel…

加密“发射台”:未来通信的新模式

随着区块链技术的飞速发展&#xff0c;加密“发射台”作为一种新兴的安全通信工具&#xff0c;正逐渐受到关注。本文将从专业角度深入探讨加密“发射台”的概念、原理、应用场景及其未来发展趋势&#xff0c;以期为读者提供有深度和逻辑性的思考。 一、加密“发射台”的概念与…

Chromium 调试指南2024 Windows11篇-准备调试工具(二)

1. 前言 在上篇文章《Chromium 调试指南 2024 &#xff08;一&#xff09;》中&#xff0c;我们简单的概述了下调试的作用。 工欲善其事必先利其器&#xff0c;现在我们开始准备你的调试工具。 2. 准备你的调试工具 这里根据Chromium官方开发指南的推荐使用Visual Studio 2…

360极速浏览器X全新Chromium内核极致顺滑,绿色便携版 v22.3.1002.64

01 软件介绍 360极速浏览器X是一款基于Chromium 95的高级双核浏览器&#xff0c;支持IE内核&#xff0c;并优化了用户体验与性能。包括无广告弹窗&#xff0c;新增的阅读模式&#xff0c;个性化标签页壁纸&#xff0c;以及专业导航功能&#xff0c;旨在提供更快、更高效的浏览…

防火墙技术基础篇:解析防火墙应用层代理概念及功能

防火墙技术基础篇&#xff1a;解析防火墙应用层代理概念及功能 1 应用层代理的概念 应用层代理&#xff08;Application Proxy&#xff09;&#xff1a;防火墙应用层代理是网络安全领域中的一种重要技术&#xff0c;工作在OSI模型的第七层&#xff0c;即应用层。它通过代理服…

初步理解ECC

理解一下公钥加密的概念 公钥加密需要一对钥匙&#xff0c;公钥和私钥&#xff0c;公钥可以公开&#xff0c;而私钥不能泄露。 那就可以用公钥给明文加密 而只有私钥才能进行解密 而要想实现这个过程&#xff0c;就需要满足两个点 1&#xff1a;加密简单易行 2&#xff1a;解…