Nodejs badge-cli

Nodejs badge-cli

npm install -g badge-cli

执行

➜  badge-cli git:(master) badge -n badge-cli
[![npm version](https://badge.fury.io/js/badge-cli.svg)](http://badge.fury.io/js/badge-cli)

显示为

npm version

当然你可以干点坏事儿

badge -n badge-cli >> README.md

是不是很简单,方便呢?

具体实现原理与源码 see https://github.com/i5ting/badge-cli


2 回复

Node.js Badge CLI

badge-cli 是一个简单的命令行工具,用于生成并插入 npm 包的版本徽章到你的项目文档中。它使用了 badge.fury.io 这个服务来获取和展示 npm 包的最新版本信息。

安装

首先,你需要全局安装 badge-cli

npm install -g badge-cli

这一步会将 badge-cli 添加到你的系统路径中,这样你就可以从任何地方调用它。

使用

一旦安装完成,你可以通过以下命令生成一个徽章链接:

badge -n badge-cli

这将会输出一个 Markdown 链接,指向 badge.fury.io 上的 badge-cli 的 npm 版本信息:

[![npm version](https://badge.fury.io/js/badge-cli.svg)](http://badge.fury.io/js/badge-cli)

如果你想将这个徽章直接添加到你的 README.md 文件中,可以使用重定向操作符 >>

badge -n badge-cli >> README.md

这将会把徽章链接追加到 README.md 文件的末尾。生成的 Markdown 看起来像这样:

[![npm version](https://badge.fury.io/js/badge-cli.svg)](http://badge.fury.io/js/badge-cli)

实现原理

badge-cli 工具的工作原理相对简单。它主要依赖于 badge.fury.io 提供的 API 来获取指定 npm 包的版本信息,并生成相应的 Markdown 链接。

下面是 badge-cli 的核心逻辑简化版:

const { execSync } = require('child_process');
const fs = require('fs');

function generateBadge(packageName) {
    const url = `https://badge.fury.io/js/${packageName}.svg`;
    const markdownLink = `[![npm version](${url})](${url.replace('.svg', '')})`;

    return markdownLink;
}

function main() {
    const packageName = process.argv[2]; // 从命令行参数中获取包名
    if (!packageName) {
        console.error('Usage: badge -n <package-name>');
        process.exit(1);
    }

    const badgeMarkdown = generateBadge(packageName);

    // 如果有文件重定向,则写入文件
    if (process.stdout.isTTY) {
        console.log(badgeMarkdown);
    } else {
        process.stdout.write(badgeMarkdown);
    }
}

main();

这个脚本从命令行参数中读取包名,然后生成对应的 Markdown 链接,并将其输出到终端或重定向到指定的文件中。

源码

如果你对 badge-cli 的内部实现感兴趣,可以查看其 GitHub 仓库:i5ting/badge-cli

希望这个简短的介绍能帮助你理解如何使用 badge-cli 来生成和管理 npm 包的版本徽章!


根据你的描述,“Nodejs badge-cli”这个工具可以帮助你在命令行中生成npm包的版本标识徽章,并将其输出到指定文件中。下面我将详细说明如何使用这个工具以及一些示例代码。

示例

  1. 安装 badge-cli

    首先,你需要全局安装 badge-cli,可以通过以下命令进行安装:

    npm install -g badge-cli
    
  2. 生成徽章

    使用 badge 命令可以生成指定npm包的徽章链接。例如,如果你想要生成一个名为 badge-cli 的npm包的徽章,可以使用以下命令:

    badge -n badge-cli
    

    这条命令会输出类似如下的内容:

    [![npm version](https://badge.fury.io/js/badge-cli.svg)](http://badge.fury.io/js/badge-cli)
    
  3. 将徽章添加到README文件

    如果你希望将生成的徽章直接添加到你的 README.md 文件中,可以使用重定向操作符 >> 将输出追加到文件中:

    badge -n badge-cli >> README.md
    

工作原理

badge-cli 是一个命令行工具,它通过调用 https://badge.fury.io 提供的服务来获取npm包的最新版本号,并将其格式化为Markdown形式的徽章链接。这样,开发者就可以轻松地在项目文档或README中展示这些信息。

参考源码

如果想了解更多关于 badge-cli 的实现细节,可以查看其 GitHub 仓库(https://github.com/i5ting/badge-cli),这里包含了完整的源代码和更多高级功能的文档。

回到顶部