我的一些有意思的 GitHub Repo

287 阅读3分钟

分为工作也业余项目,总共 15 个(2024-11-15)

工作

共 7 个。

1. eslint 检测是否违反 DRY

惊艳点:如何检测两份代码重复性?

  • 通过 ast 降噪,即忽略代码格式和内容值,确保结构相似就能被检测到
  • 通过 levenshtein 编辑距离计算代码相似性
  • napi-rs 生成 rust native binding 的 levenshtein 距离计算函数解决性能瓶颈(性能提升 3 倍)

标签:Rust

2. git-commit-msg-linter

www.npmjs.com/package/git… 可视化 git 提交信息规范工具,👀 规范开发者的每一行提交信息,为团队定制专属的 Git 提交信息规范

背景:团队内推行 cr 规约,其中有对 msg 的规范,但是没有工具约束大家容易忘记。

特色:被国外多个开发者提交代码

3. es5-passport

支持本地文件,还支持远端文件检测!

image.png

发现 let

www.npmjs.com/package/es5… 发现 es5 不兼容的语法。

4. tinify-client

github.com/legend80s/t…

tinypng.com 使用的压缩技术将图片压缩到极致

解决需要手动将一张图片拖放到 tinypng 十几次才能达到极致压缩的难题。

5. create-test-app

npx create test从零到一快速搭建单测环境 jest 🚀

www.npmjs.com/package/cre…

背景:解决多个项目频繁配置 jest - 安装大量依赖/coverage/transform/pacakge.json/.gitignore/规范单测示例

Because configure Jest and set coverage is tedious 🤕.

Just with one line cmd 🚀 , everything is configured for U ❤️

6. js2schema

标签:提效

github.com/legend80s/j…

更强大的 json 转 schema 工具!

7. svgo-fine 🔩

A tool to fine tune svgo to meet my SVG optimization requirements.

❯ pnpx svgo-fine -i e:/download/large-svg.svg

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" className="design-iconfont" fill="currentColor" width="20" height="20">
  <path d="..."/>
</svg>

项目地址:github.com/legend80s/s…

业余

共 8 个。

1. verb-corpus

verb-corpus

Almost complete English verb list. 多个词典组合筛选而成的英语动词库

使用用途,比如开发函数必须动词开头的 eslint 插件 eslint-plugin-function-name

2. cdi #提效

github.com/legend80s/c…

标签:重复造轮子

golang 实现更智能的 cd 命令 cdi。符合人体工程学搜索习惯的 cd 命令!

3. instant-rs - A better console.time

简介

A better console.time 比 console.time 更好的耗时度量工具,将耗时转成可读性更好的格式,采用 Rust API 设计,同时解决 console.time label 需要写两次问题。

效果

1337000000ms => '15d 11h 23m 20s'

import Instant from 'instant-rs'

const now = Instant.now();
// 执行耗时操作
await doSthExpensive()
console.log("time costs", now.elapsed());

项目链接

www.npmjs.com/package/ins…

4. gallery-server

标签:工具

一个漂亮的本地图片查看器,适配手机端和 PC 端 & 图片互传。

www.npmjs.com/package/gal…

利用浏览器查看本地图片文件夹且手机端也可查看 PC 端图片或视频的好工具:Gallery Server。当然你也可以利用其将 PC 端文件下载到手机上 OHOHOHOH!

技术特点

  • 是一个客户端,也是一个命令行,也是一个服务器 😄!
  • 使用方便。一行命令启动本地 server 预览图片。
  • koa + react。
  • 前后端一个代码库,最大化代码复用。
  • 私密性,防窃听(局域网也可以被窃听)。

5. ydd YouDaoDictionary

标签:提效

Explain English word in Chinese.

查询英文单词的中文释义。

Dictionary for programmers who prefer terminals.

有道词典,致喜欢在终端工作的程序员。

npx ydd "abyss" -e -s -c=all

juejin.cn/post/734872…

6. cli-aid

标签:重复造轮子 学习

命令行框架:github.com/legend80s/c…

命令行参数解析:process-yargs-parser

帮你迅速搭建 CLI 应用,类似 commander 但更轻量。重复轮子只是为了学习命令行工具框架 😄。

7. Solid.js 版扫雷

标签:学习

github.com/legend80s/s…

试玩 mine-sweeper-solid-js.netlify.app/

8. 多种方式在浏览器编译 TS

标签:奇思妙想

juejin.cn/post/709020…