npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

gf-zt-utils

v1.0.16

Published

工具函数

Downloads

1

Readme

ztUtils

TODO: description

Usage

const ztutils = require('ztUtils');

// TODO: DEMONSTRATE API

使用 & 文档

1. 编辑源代码

安装完成后,用编辑器打开 src/export.ts 文件。在该文件中编写功能实现,并且导出对应的类型或者函数。比如:

/**
 * 将两个数字相加,并返回它们的和。
 *
 * @param a - 第一个数字。
 * @param b - 第二个数字。
 * @returns - 返回它们相加的和。
 */
export default function add(a: number, b: number): number {
  return a + b;
}

2. 编写测试用例

源代码编写完成后,我们需要编写测试用例来验证实现上是否存在问题。打开 test/export.test.ts,并编写测试用例:

import add from '@src/export';

test('1 + 1 == 2', () => {
  expect(add(1, 1)).toBe(2);
});

3. 发布项目

运行 npm run build 编译项目,npm run build 任务会为你做很多的事情,比如:清空输出目录(clean)、执行语法规范检查(tslint)、运行单元测试(test)、编译项目(make)、打包项目(package)等等。

npm run build

编译成功后,通过 git-commit 提交项目的变更。如果需要发布(release)一个新的版本的话,记得使用 git-tag 为当前版本打上标记,并推送 git-push 至远程仓库中。

⚠️:提交 git-commit 之前,请确保测试代码的覆盖率(coverage)在 90% 以上(目前工作流没有强制限制)。

反馈问题

提交一个新的问题时,请参考以下步骤进行:

  • 前往 Issues 查找一下,你的问题是否已经解决或者是正在解决中。
  • 简洁的标题是很有必要的,这能让开发者更快的注意到你的问题。
  • 详细的描述你遇到的问题,以及复现步骤
  • 为该问题打上对应的标签,比如:【新需求】、【BUG】、【优化】等等。
  • 如果有需要提供 代码片段(Snippets),请保证代码片段简洁易懂。不要参杂其他无关的代码进去。
  • 如果你有能力修复这个问题话,请前往 这里 提交一个 PR。
  • 😊 非常感谢你对项目的发展作出的贡献~ 😊

附录(1)- 目录结构

|- 📁 .vscode # vscode 相关设置。
|  |- settings.json # 本地 vscode 编辑器配置。
|- 📁 benchmark # 性能测试代码。
|- 📁 coverage # 测试代码覆盖率报告。
|- 📁 dist # 输出目录。
|  |- {**/*.js} # webpack 打包后的文件,适用于直接通过 <script> 标签直接引用。
|  |- {**/*.min.js} # 压缩好的文件。
|  |- {**/*.js.map} # SourceMap 文件。
|- 📁 docs # 生成文档目录。
|- 📁 lib # tsc 编译目录。
|  |- {**/*.js} # tsc 编译后的文件,适用于 Node.require() 方式引用。
|  |- {**/*.d.ts} # 类型声明(declaration)文件。
|- 📁 node_modules # NPM 模块安装目录。
|- 📁 src # 源代码。
|  |- export.ts # 默认导出文件,删除/更改名称需要同时更新 `package.json#main` 字段。
|  |- tsconfig.json # src 目录语法提示。
|- 📁 test # 测试代码。
|  |- export.test.ts # 默认测试代码。
|  |- tsconfig.json # test 目录语法提示。
|- 📁 toolkit # 开发 & 编译配置工具
|  |- 📁 compiler # tsc 编译器工具
|  |  |- tsconfig.base.json # 基础 typescript 编译配置。
|  |  |- tsconfig.prod.json # 生产环境 typescript 编译配置。
|  |  |- tsconfig.test.json # 测试用例 typescript 编译配置。
|  |- 📁 linter # tslint 代码规范工具
|  |  |- tslint.json # 语法规范配置文件。
|  |- 📁 scripts # nodejs 自动化脚本
|  |  |- task-unsupport.js # 用于提示任务不支持的脚本。
|  |- 📁 unit-test # 单元测试工具
|  |  |- jest.config.js # 单元测试(jest)配置文件。
|  |- 📁 webpack # webpack 编译工具
|  |  |- webpack.config.base.js # 基础 webpack 打包配置。
|  |  |- webpack.config.min.js # 压缩打包配置文件。
|  |  |- webpack.config.prod.js # 生产环境打包配置,用于导出多个 webpack.config。
|  |  |- webpack.config.uncompress.js # 未压缩的打包配置。
|- .editorconfig # 统一编辑器配置。
|- .gitignore # git 文件忽略配置。
|- package.json & package-lock.json # NPM 包配置文件。
|- CHANGELOG.md # 更新日志。
|- README.md # 项目说明。

附录(2)- 命令行

任务(task) | 摘要(summary) ------------|-------------- benchmark | 运行性能测试代码。 build | 编译并打包项目,运行后会先进行语法规范校验(lint)和单元测试(test),然后将 src 中的源代码分别编译至 distlib 中。任务运行成功后,请手动提交 git-commit 变更,并根据需要按照 package.json#version 打上对应的版本标记(git-tag)。 clean | 清除所有自动生成的文件。 clean:test| 仅清除 srctest 目录中的 **/*.js 文件。通常这些文件是由 make:test 命令生成。 docs | 生成文档。 lint | 运行所有代码规范检查。 lint:src | 对 src 目录中的源码进行规范检查(tslint)。 lint:test | 对 test 目录中的源码进行规范检查(tslint)。 make | 运行 tsc 命令,将 src 中的源代码编译至 lib 目录中。并且生成对应的类型声明(declaration)文件。 make:test | 运行 tsc 命令编译 test 目录中的测试代码,通过 clean:test 命令清除生成后的 **/*.js 文件。 package | 通过 webpacksrc 中的源代码打包输出至 dist 目录中。生成 umd 格式的文件头,可以直接通过 <script> 标记引用。 test | 运行全部的单元测试(unit-test),并且生成测试代码覆盖率(coverage)报告文件。可以通过指定【命令行参数】来运行单个或者部分测试用例。 upgrade | 升级项目修订版本号(patch),同 upgrade:patch。另请参加:语义化版本 2.0.0upgrade:patch | 升级项目的修订版本号(patch),不会自动打 git-tag 标签。 upgrade:minor | 升级项目的主版本号(minor),不会自动打 git-tag 标签。 upgrade:major | 升级项目的次版本号(major),不会自动打 git-tag 标签。

温馨提示:

  • 💡:在终端输入 npm run {任务(task)} 来运行指定的任务。
  • 💡:目前 docsbenchmark 任务暂不支持。