my-development-tools icon indicating copy to clipboard operation
my-development-tools copied to clipboard

ADoyle 的开发工具箱

My Development Tools

我的开发工具箱。持续更新中。

只记录我在用的工具,所以

  1. 当我不用了或者找到更好的替代品,会移除掉旧记录。
  2. 不接受 Pull Request,有问题可以提 Issue。

版权声明 (Copyright and License)

Copyright 2016-2022 ADoyle ([email protected]). The project is licensed under the BSD 3-clause License.

See the LICENSE file for the specific language governing permissions and limitations under the License.

说明

  • 表示 开源软件。本文档大部分都是开源的,所以只注明特别的软件;
  • 表示兼容 Mac 平台
  • 表示兼容 Linux 平台
  • 表示兼容 Windows 平台
  • 表示可以通过 Homebrew 安装;
  • 表示 Web 服务
  • 表示 Chrome 插件;

TOC

  • 其他
  • 统计数据
  • 数学
  • ChatOps
  • 桌面应用开发
  • Authorization
  • 开源项目
  • Ansible
  • Semver
  • RFC
  • License
  • Github
    • 界面交互
    • Github App
  • SVG
  • 代码质量检查
  • 安全
    • 逆向工程
    • 漏洞信息平台
    • 漏洞靶场
  • 架构
  • Checklist
  • 编辑器/IDE
    • 代码编辑器
    • 富文本编辑器 WYSIWYG
    • Online IDE
    • IDE 辅助工具
  • 自动化
  • 下载工具
  • Terminal
  • Shell
    • 配色
    • Shell Script Development
  • Cheatsheet
  • CLI
  • Commands in Docker
    • Builtin Commands
    • Builtin Command Alternatives
    • 进程
    • 文件处理
  • 结构化数据处理
    • YAML
    • HCL
    • JSON
    • JSON Schema
    • JSON Path
  • Lint
  • Mock
  • HTTP
  • 网站
  • SSL
  • BSD 系统
  • Linux 系统
    • Linux 发行版
    • 桌面系统
    • 窗口管理器
    • init
    • 时间
    • 文件系统
    • 监控
    • 运维
    • Troubleshooting
  • 文件同步/备份/快照
    • 云盘
  • ISO 镜像制作与刻录
  • 数据库/存储
    • Embeddable DB
    • 数据库设计
    • Database Versioning
  • 网络
    • 防火墙
    • DNS
    • HTTP
    • Websocket
    • 抓包、流量分析
    • API Gateway
    • Tunnel
  • ProtoBuf
  • CI/CD
  • IM
  • Git
  • Chrome
    • Chrome 主题
    • Chrome 插件
  • 画图
    • ASCII Art
  • 测试
    • 字符串测试
    • HTTP Benchmark
    • 基准测试 (Benchmark Test)
    • 压测 (Stress Test)
  • 密码相关
    • 加密/解密
    • 密码管理
  • 编码
  • 知识管理
  • 搜索引擎
  • 邮件
  • 翻译
  • Windows App
  • Mac App
  • 字体
  • Design
  • Emoji
  • 命名
  • 团队协作
  • 服务 (Service)
  • 爬虫代理池
  • 伪数据
  • 静态文件托管
  • CMS
  • PaaS
  • Serverless
  • microVM
  • 跳板机/堡垒机
  • REPL
  • 正则表达式 (Regex)
  • 数据可视化
    • 地图
  • 日志
  • 电子书
  • 交互式 Notebook
  • Lua
  • Python
  • Golang
  • NodeJS
  • TypeScript
  • WebAssembly
  • 前端开发
  • Docker
  • K8S/Kubernetes
  • 硬件
  • 虚拟化
    • libvirt/KVM
  • 模板引擎
  • TeX/LaTeX
  • Slide/Presentation
  • 文档
    • 文档系统
    • 文档处理
    • Markdown
    • Changelog
    • badges
  • Hash
  • 图像处理
  • 视频处理
  • 压缩/解压
  • Steganography
  • OCR
  • Android
  • 视频/音频
    • 音乐
  • 知识图谱
  • 互联网关键词趋势
  • 自然语言处理 (NLP)
    • Corpus 语料库
    • 信息提取 (Information Extraction)
    • Word Segment 分词
    • 自然语言生成 (NLG)
  • 语音识别
    • 语音转文字
  • 运营
  • 中国特色
  • 人文
  • Funny
    • Game
    • 教你搜索
  • 待评价
    • 机器学习
  • 别人的工具列表

其他

  • hashcat: 很快的密码破解工具
  • irssi: IRC Client
  • screenFetch: 获取系统信息
  • franc: 自然语言语种推测
  • etcher: 将系统镜像写入外接硬盘的工具
  • browserless: Chrome as a service in docker
  • UnblockNeteaseMusic: 解锁网易云音乐客户端变灰歌曲
  • https://learnxinyminutes.com : 快速学习各种编程语言的手册
  • Sourcetrail: 代码可视化浏览器
  • Bilibili-Evolved: 强大的哔哩哔哩油猴脚本
  • smartmontools: 硬盘 S.M.A.R.T. 检测命令行工具。smartctl and smartd to control and monitor storage systems using the SMART built into most modern ATA/SATA, SCSI/SAS and NVMe disks.
  • insect: 很不错的计算器,单位换算很方便。提供网页在线服务,也提供终端程序。开源。跨平台。
  • asdf: 通用的程序版本管理工具。类似 gvm、nvm、rbenv,不过每种语言管理器作为 asdf plugin 使用。
  • 7zip: 免费开源的压缩软件。支持多种压缩算法、多种压缩等级、加密、分片。
  • shlink: 短链服务。功能挺全。
  • RIME: 开源输入法。支持 Windows/Mac/Linux/Android
  • remark42: 评论系统
  • Mastodon: 微博客社区

统计数据

数学

ChatOps

  • wechaty: 聊天机器人开发框架

桌面应用开发

  • electron: 用 Web 技术栈开发跨平台的桌面应用
  • tauri: 用 Web + Rust + JS 开发跨平台的桌面应用。Web 技术做窗口渲染,Rust 做后端引擎。linux 下使用 GTK + WebKitGTK,windows 使用 windows-rs + WebView2,MacOS 使用 AppKit + WKWebView。Android 和 iOS 的支持还在开发中。包大小、内存占用,都优于 electron。

Authorization

  • casbin: 一个类库。通过设计 PERM 模型来控制认证策略。支持 ACL, RBAC, ABAC 等策略。支持主流语言。
  • hydra: OpenID Connect and OAuth Provider written in Go
    • dex: 备选方案

开源项目

  • 如何选择 License
    • https://choosealicense.com/
  • 如何写 Issue/PR Template
    • https://github.com/stevemao/github-issue-templates
  • 如何写 CODE_OF_CONDUCT
    • https://www.contributor-covenant.org/
  • 如何写 Security Policy
    • https://docs.github.com/en/free-pro-team@latest/github/managing-security-vulnerabilities/adding-a-security-policy-to-your-repository
    • https://tools.ietf.org/html/draft-foudil-securitytxt-10

Ansible

Semver

RFC

  • https://tools.ietf.org/ : 查看 IETF RFC 文档的工具。
  • https://www.rfc-editor.org/ : 查看 IETF RFC 文档的工具。
  • Markdown 生成 RFC 文档的工具
    • https://github.com/mmarkdown/mmark
    • https://github.com/cabo/kramdown-rfc2629
    • 例子:https://github.com/danyork/writing-internet-drafts-in-markdown

License

  • https://spdx.org/licenses/
  • LicenseFinder: Find licenses for your project's dependencies.
  • scancode-toolkit: detects licenses, copyrights, package manifests & dependencies and more by scanning code ... to discover and inventory open source and third-party packages used in your code.

Github

界面交互

Github App

SVG

代码质量检查

安全

  • Kali Linux
  • Snyk: 开源风险收集检测服务。提供 API 和 CLI 做检查。
  • Scanners-Box: 安全行业从业者自研开源扫描器合辑
  • falco: 「待评价」intrusion and abnormality detection for Cloud Native platforms such as Kubernetes, Mesosphere, and Cloud Foundry. Detect abnormal application behavior.
  • fail2ban: 入侵防御软件
  • nmap: 网络扫描工具
  • Metasploit
  • Tiger: The Unix security audit and intrusion detection tool

逆向工程

  • Ghidra: 「待评估」美国国家安全局开源的逆向工程框架

漏洞信息平台

  • https://nvd.nist.gov/
  • https://www.cvedetails.com/
    • https://cve.mitre.org/
  • http://www.cnnvd.org.cn/ : 国家信息安全漏洞库
    • http://cve.scap.org.cn/

漏洞靶场

  • https://github.com/vulhub/vulhub
  • https://github.com/Medicean/VulApps

架构

Checklist

编辑器/IDE

代码编辑器

富文本编辑器 WYSIWYG

Online IDE

  • Eclipse Che: 很不错的云端 IDE
  • Theia: Web IDE
  • Codesandbox
  • codepan: Like codepen and jsbin but works offline. https://codepan.net
  • https://stackblitz.com/ : StackBlitz, Online IDE powered by Visual Studio Code
  • https://codeanywhere.com/
  • code-server: VSCode in the browser
  • gitpod: VSCode in the browser + workspace

IDE 辅助工具

自动化

  • hubot: 交互机器人
  • robotjs: 用 NodeJS 定制 GUI 自动化流程。支持 Windows, Mac, Linux 系统
  • https://danger.systems/ : code review 时挺有用的自动化工具

下载工具

Terminal

Shell

用来增强 Shell 的交互/开发体验。

  • terminals-are-sexy: A curated list of Terminal frameworks, plugins & resources for CLI lovers.
  • fig: 非常酷的补全工具。目前只支持 MacOS。
  • basher: bash 包管理器
  • dotbot: dotfile 管理器
  • bash: 注意升级到最新版本的 bash
  • bash-completion: bash 命令补全
  • bash-it: Bash 脚本管理框架
  • dotbot: dotfile 管理框架
  • PathPicker: 「待评价」多条记录选择器。不是很好用
  • a-bash-prompt: 很漂亮的 bash 专用的 prompt。另外 zsh 专用的 prompt 有 pure
  • bash-preexec: preexec and precmd hook functions for Bash in the style of Zsh.
  • direnv: 根据当前目录自动执行命令,比如设置一些环境变量什么的,切出目录环境变量会自动变回去
  • pueue: 将任意 shell 命令托管到后台队列里执行

配色

Shell Script Development

Cheatsheet

  • Rico's cheatsheets: 网页版,源码
  • cheat: 命令行工具,本地存储,支持多 cheatsheets 扩展。这个仓库只有程序,需要下载官方 cheatsheets 配合使用。还可以 cheat -e 自己编辑维护。
  • tldr: 命令行工具,手册内容由社区维护,非常详尽。
  • cheat.sh: cheatsheet 服务,可通过 curl 获取内容,内容由社区维护。
  • linux-cheat: Linux user-land CLI utilities

CLI

  • https://command-not-found.com/ : 如果找不到命令,可以快速搜索到对应的安装方式。
    • commando: 封装了各种命令的容器镜像
  • ipcalc: 计算/反向计算 IP 网段和掩码。Mac 可用 brew install ipcalc 安装。Linux 系统安装 ipcalc-ng
    • 在线服务 http://jodies.de/ipcalc
  • hr: 终端分隔符
  • cloc: 代码行统计
  • qrcode: 命令行版二维码生成器
  • iponmap: 命令行版 ip 定位世界地图
  • pv: 显示 linux 管道数据传输速度
  • gotty: 将终端程序映射成 Web 服务
    • shell2http: HTTP-server to execute shell commands. Designed for development, prototyping or remote control.
  • thefuck: 命令 typo 纠错
  • fkill-cli: 灵活的删进程命令,例如 fkill 1337 safari :8080,如果不加参数,则是交互式命令。
  • taskbook: 命令行 Todo List Manager
  • sampler: A tool for shell commands execution, visualization and alerting. Configured with a simple YAML file.
  • Mosh: 自动重连的 ssh
  • tmux: 多终端管理器
  • catimg: 在终端里打印图片,打印出的都是像素风格的。
  • sshpass: 通过编程方式在 ssh 时输入用户名和密码。不安全,勿用在生产环境。
  • hhighlighter: 用不同颜色高亮多个匹配字符串

Commands in Docker

  • docker pull pygmy/pgcli https://hub.docker.com/r/pygmy/pgcli
  • docker pull adoyle/mycli https://hub.docker.com/r/adoyle/mycli
  • docker run -d --name ariang -p 6080:80 leonismoe/ariang https://hub.docker.com/r/leonismoe/ariang
  • docker run -ti --rm -v ${HOME}:/root -v $(pwd):/git alpine/git <git_command> https://hub.docker.com/r/alpine/git
  • https://hub.docker.com/r/jlesage/firefox
  • https://hub.docker.com/_/irssi
  • commando: 封装了各种命令的容器镜像

Builtin Commands

系统自带且好用的命令

  • https://wangchujiang.com/linux-command/ : Linux 命令解释搜索工具
  • brew info coreutils: Mac 下使用 GNU 软件,比如 realpath
  • sar: linux 命令,查看系统状态
  • stat: 查看文件状态,比 ls 更详细,并且能指定输出哪些状态
  • file: 查看文件类型。详见
  • md5: 计算 md5。详见
    • cksum: crc32 算法
    • shasum: sha1 算法
  • 编辑:
    • ed vi vim nano
  • 阅读:
    • cat more less
  • realpath: 获取文件的真实绝对路径。因为 Mac 系统没有 realpath,可以用这个补上。

Builtin Command Alternatives

比系统命令更好的替代品。

当想调用原生的命令时,但是存在同名的 alias 或者 function,比如 alias cat=ccat,可以使用 \cat 或者 command cat 调用原生命令。 详见这篇文章: https://stackoverflow.com/a/16506263/4622308

  • diff
    • diff-so-fancy: 超酷的 diff 着色增强工具,但只能用管道输出,仍需借助 diff 或 git diff 工具。
    • icdiff: 左右分栏 diff,外加着色。
    • diff2html: 将 diff 文件转成 HTML 页面的形式预览。非常漂亮
  • exa: much better ls
  • z.lua: 路径切换 cd 的增强版。支持多级模糊匹配,交互式搜索等功能
  • bat: better cat。自动代码着色,自带分页器,显示代码行,支持 diff,自动标记 git 变动,可显示不可见符号。
  • multitail: 同时 tail 多个文件
  • tree: Mac 没有 tree 命令
  • pstree: tree 结构展示 ps 命令
  • ncdu: better du。递归扫描整个文件夹空间占用,交互式。
  • du: du 的树形结构展示版本
  • fd: better find
  • trash: better rm,不直接删除文件而是移到回收站。建议 alias rm='trash'
  • ripgrep: 模糊搜索文件内容,better grep。据说是最快的,搜索大量内容时,确实明显比 ag 快
    • ag: 备选方案
  • fzf: 模糊筛选/搜索任意列表
  • cash: For windows 用户。用 nodejs 写的程序,模拟一些 linux 命令
  • procs: better ps
  • bottom: better top/htop. A cross-platform graphical process/system monitor with a customizable interface and a multitude of features. Supports Linux, macOS, and Windows.

进程

文件处理

  • ranger: 文件管理器 CLI。Python 写的
    • nnn: 听说很快。待评价
    • fff: 纯 Bash 写的文件管理器,支持 bash 3.2+。
  • massren: 在自己的编辑器编排后批量重命名文件。非常好用!
    • rename: 备选方案。命令式批量重命名文件。brew install rename
  • fpp: 快速筛选工具(不怎么好用)

结构化数据处理

YAML

  • http://yaml-online-parser.appspot.com/
  • yq: 类似 jq

HCL

  • https://www.hcl2json.com/ : 需要翻墙

JSON

  • https://www.json.cn/ : JSON 在线解析
  • jv: JSON Log Viewer
  • fx: JSON Viewer
    • jq: JSON Viewer
  • jid: 交互式 JSON Viewer
    • jiq: It's jid with jq.
  • JSON5: JSON for humans. (Not an official successor to JSON.)
  • hjson: 比 JSON5 更丰富,且相对更标准,有 RFC 文档
  • simdjson: Parsing gigabytes of JSON. 2.2GB/s
  • JSON Patch: JSON 数据的 add、remove、replace、copy、move、test 操作
  • JSON Merge Patch: RFC7386
  • https://www.json-generator.com/ : 根据语法随机生成 JSON 对象

JSON Schema

  • https://www.jsonschemavalidator.net/ : 在线校验 JSON Schema
  • https://spacetelescope.github.io/understanding-json-schema/index.html : 目前最好的入门教程
  • https://jsonschema.net/ : 根据 JSON 生成 JSON Schema
  • json-schema-faker: 根据 JSON Schema 生成数据
  • http://schemastore.org/json/ : 各种现成的 JSON Schema 文件
    • https://github.com/instrumenta/kubernetes-json-schema : K8S JSON Schema 文件

JSON Path

  • JsonPath
  • https://jsonpath.com/ : JSONPath Online Evaluator
    • http://jsonpath.herokuapp.com/

Lint

Mock

  • mockbin: Mock, Test & Track HTTP Requests and Responses
    • https://github.com/Mashape/mockbin

HTTP

  • httpstat: httpstat visualizes curl(1) statistics in a way of beauty and clarity
  • httping: 以 HTTP 协议角度测量 HTTP 延迟
  • httpie: a CLI, cURL-like tool for humans
  • htrace.sh: 「待评价」Swiss Army knife for http/https troubleshooting and profiling.
  • Paw: 模拟 HTTP 请求的 GUI 客户端

网站

  • chrome 自带网页截屏命令
  • pageres: 网页截屏
  • temme: 利用 CSS 语法,从 HTML 提取出 JSON 数据
  • https://archive.ph/ : 永久保存网页内容。保存的页面来自用户提交的,不做自动抓取。生成短链接
    • https://archive.org/ : 永久保存网页内容。保存的页面来自用户提交的和自动抓取的。生成链接很长
    • https://perma.cc/ : 备用方案
  • sitemap.js: 生成 sitemap 的工具
  • Favicon 生成器
  • rrweb: 网页浏览录制和回放
  • umami: website analytics alternative to Google Analytics.

SSL

  • certbot: letsencrypt 官方证书生成工具
  • acme.sh: 证书生成工具, 支持 ZeroSSL.com、Letsencrypt.org、BuyPass.com、SSL.com、Pebble strict Mode,以及其他遵循 RFC8555 的 CA。支持模式 Webroot,Standalone,Standalone tls-alp,Apach,Nginx,DNS,DNS alias,Stateless。
  • mkcert: 零配置生成自签名证书。默认有效时间 825 天。
  • Fishdrowned/ssl: 零配置生成自签名证书。比 mkcert 提供更丰富的配置选项。

BSD 系统

Linux 系统

Linux 发行版

  • https://livecdlist.com/ : Linux LiveCD 发行版列表
  • https://distrochooser.de : 帮你选择 Linux 发行版
  • SystemRescue: 基于 Arch Linux,预装了一堆 linux 系统工具。用于系统恢复和硬盘处理。是 Live CD,开箱即用。
  • debian: 服务器场景推荐
  • manjaro: 新手入门
  • ubuntu: 新手入门
  • ubuntu core: 用于低端硬件配置场景
  • Clean Linux: Intel 出品
  • Arch Linux: Wiki 文档最全面
  • Kali Linux: 专注于安全渗透
  • Tails: 专注于安全
  • Puppy Linux
  • mint

桌面系统

窗口管理器

init

时间

  • Chrony: NTP 时钟同步程序

文件系统

监控

  • netdata: netdata is a system for distributed real-time performance and health monitoring. It provides unparalleled insights, in real-time, of everything happening on the system it runs (including applications such as web and database servers), using modern interactive web dashboards.
  • glances: 系统监控,运行在终端, alternative to top/htop
  • Prometheus: Metrics 存储、查询、监控报警,时序数据库。
    • thanos: 让 Prometheus 高可用,以及存储可扩展的组件。
  • statsd: Metrics 数据聚合
  • pcp: Performance Co-Pilot。系统性能监控

运维

  • cockpit: 通过 Web 服务运维系统
  • osquery: 使用 SQL 查询系统级别的信息

Troubleshooting

  • sysdig: Linux system exploration and troubleshooting tool
    • sysdig-inspect: A powerful opensource interface for container troubleshooting and security investigation
  • bcc: Tools for BPF-based Linux IO analysis, networking, monitoring, and more

文件同步/备份/快照

  • syncthing: 文件自动同步
  • tar
    • 参考文章: https://archive.ph/7R49W
  • rsync
  • rclone: rsync for cloud storage. To sync files and directories to and from different cloud storage providers.
  • restic: 简单易用的备份工具。支持快照,加密。可与 rclone 搭配。不支持软链接,restore 会报错
  • timeshift: 备选方案。基于 rsync + hard link。支持快照、增量备份、BTRFS、自定义路径(默认屏蔽用户目录)。不支持云存储
  • bupstash: 据说性能很高
  • borg: 备选方案
  • duplicity: 支持增量备份,软链接。不支持硬链接。
    • duply: duplicity 的前端程序
  • Clonezilla: 镜像和备份程序,不支持快照。使用命令行备份貌似难度很高。还原到不同大小分区也可能出问题。
  • 其他备份工具
  • https://github.com/restic/others

云盘

  • 阿里云盘
  • Dropbox
    • Maestral: 开源的 Dropbox 客户端。有 CLI 工具,支持 Linux。
  • Nextcloud: 开源的网盘方案,客户端支持很多平台。用户体验很好,可与商业产品竞争。支持插件。
  • Seafile

ISO 镜像制作与刻录

  • mkisofs: 制作 ISO 镜像。Linux 命令
  • 制作启动 U 盘
    • Ventoy: 支持多个不同类型的镜像共存。只支持在 Windows/Linux/虚拟机 制作。
    • rufus: 操作简单,可配置。只支持在 Windows 制作。
    • etcher: 一键操作,不可配置。支持在 Windows/MacOS/Linux(不支持命令行)制作。
    • bootiso: 只支持在 Linux 制作,且用于安装 Linux 系统。

数据库/存储

  • DataGrip: 数据库 GUI
  • mycli: mysql 命令行客户端
  • pgcli: postgres 命令行客户端
  • medis: Redis GUI Client
  • SQL 速查表
  • UNQLite:
  • SQLite
  • vitess: MySQL Sharding Proxy。支持 k8s。Youtube 2011 年就开始跑了。
  • dolt: 功能类似 Git 的数据库
  • minio: 对象存储,高性能,K8S-Native
  • ceph: 块存储,对象存储,文件存储

Embeddable DB

  • LokiJS: javascript embeddable / in-memory database
  • BuntDB: an embeddable, in-memory key/value database for Go with custom indexing and geospatial support

数据库设计

  • sqldbm: 目前做的最好(没有之一)的 ER 建模工具,目前免费。
  • https://dbdiagram.io/ : 在线 ER 建模工具,通过 dbml 语法构建 ER 图。支持导出 SQL。

Database Versioning

  • flyway: 用 Java 写的,支持 SQL 和 Java 写 migration。没有 revert 概念。
  • gh-ost: 与 flyway 不一样的实现方案,创建 shadow/ghost 表来作 schema migration。功能丰富。不基于 trigger,基于 bin-log。
  • migrate: 用 Go 写的,支持 SQL。缺乏文档和样例。备选
  • sql-migrate: 用 Go 写的。备选

网络

  • Awesome SDN: 关于软件定义网络的开源技术
  • Awesome Home Networking: 家庭网络相关知识
  • sindresorhus/speed-test: 测试网速。基于 speed-test.net 的命令
  • iPerf3: 点对点测速。支持 TCP, UDP, SCTP with IPv4 and IPv6
  • Linux 命令: ping, nc, mtr, netstat, nettop, iftop
  • comcast: 模拟网络丢包
  • ZBench: VPS 网络性能测评脚本
  • Open vSwitch: 虚拟化交换机
  • mininet: 在一台主机上创建任意的网络拓扑,用于做网络实验。

防火墙

DNS

  • CoreDNS: DNS server。CNCF 项目
  • https://dns.google/
  • https://www.nslookup.io/ : 查询 DNS 记录
  • nali: 查询IP地理信息和CDN服务提供商的离线终端工具

HTTP

  • JSON Server: 快速搭建 HTTP RESTFul API Server
  • http-server: 快速搭建 HTTP 服务器
  • Varnish: HTTP 内容缓存服务器
  • Traefik: 类似 Nginx。现代化 HTTP 反向代理服务器
  • h2o: the optimized HTTP/1, HTTP/2, HTTP/3 server

Websocket

  • websocketd: 基于 stdin/stdout 的 WebSocket 服务器,开箱即用

抓包、流量分析

  • wireshark: 功能非常强大,面向专业用户。能够抓 HTTP/TCP/UDP 包。条件查询功能很丰富。
  • mitmproxy: 命令行版抓包工具。4 种模式,3 种命令行 mitmproxy/mitmdump/mitmweb。mitmweb 提供 web 服务端。
  • whistle: 用 NodeJS 实现的跨平台 HTTP, HTTPS, WebSocket 调试工具
  • nethogs: 按进程实时监控网络流量
  • sniffer: 按进程和链接实时监控网络流量
  • Proxyman: 功能超强的 HTTP 抓包工具

API Gateway

Tunnel

  • awesome-tunneling
  • WireGuard: VPN 软件。该项目已合并到了 Linux 内核 (5.6 版本起)。
  • frp: 内网穿透
    • nps: 备选方案
  • ZeroTier: 类似 VPN,不过更灵活。构建点对点通信网络。开源的,也有托管服务。支持多平台 Windows、Mac、Linux、IOS、Android、NAS。
  • Clash: A rule-based tunnel in Go.
  • sshuttle: 基于 ssh 的隧道代理
  • localtunnel: HTTP 服务内网穿透工具,开发用很方便

ProtoBuf

CI/CD

  • drone: Drone is a Continuous Delivery platform built on Docker, written in Go
  • GoCD: written in java

IM

Git

  • Gitea: MIT 协议开源的 Git 托管服务。后端采用 Go 编写
  • git-cal: 类似 Github 活动图的命令行版
    • git-stats: 同 git-cal
    • github-contributions-chart
  • git-extras: git 扩展命令
  • git-lfs: git 支持大文件存储
  • git-recall: 交互式 git log
  • cz-cli: git commit message 规范工具
    • commitlint
  • GitKraken: Git GUI
    • Sublime Merge: Sublime 作者出品的 Git GUI,查找跳转很方便,但是目前 UI 设计不好,看起来不够直观
  • git-tips: git 使用技巧
  • Gource: 版本控制历史可视化
  • isomorphic-git: 用 JS 实现的 git
  • sourcegraph: 在浏览器辅助看代码的工具,支持 GitHub, Phabricator, Bitbucket
  • git-history: 可视化单个文件的 diff
  • git-secret: 将敏感信息加密再存储到 Git
    • blackbox: 支持 Git/Mercurial/Subversion

Chrome

Chrome 主题

Chrome 插件

画图

  • PlantUML: 用代码画 UML 图或流程图
  • Mermaid: 类似 PlantUML,另一种基于文本生成图的工具
  • Pixelmator: 像素画图工具
  • krita: 自由、免费、开源、跨平台的像素绘画软件
  • Sketch: 矢量画图工具
  • Quil: 写代码绘画 (Painting)
    • 源自 http://www.tylerlhobbs.com/ https://www.instagram.com/tylerlhobbs/
    • 教程 教程
  • p5.js: processing JS 工具
  • https://processing.org/
    • http://processingjs.org/
  • drawio: 非常优秀的开源在线绘图前端库。各种图都有,支持国际化。
  • https://excalidraw.com/ : 手绘风格的绘图工具。开源,源码
  • MagicaVoxel: 体素建模工具

ASCII Art

  • Monodraw: ASCII Art 画图工具
  • image-to-ascii: 图片转 ASCII 字符
  • ASCII Art 样例库
    • http://www.ascii-fr.com/
    • https://asciiart.website/
  • FIGlet: ASCII Art 字体程序
  • http://patorjk.com/software/taag/ 网页版

测试

字符串测试

附赠一个笑话,一个 Bug 测试员走进一家酒吧

HTTP Benchmark

基准测试 (Benchmark Test)

压测 (Stress Test)

密码相关

加密/解密

  • GPG
  • keybase: 以社交系统为之背书的,开源的 PGP 工具、系统与托管服务器
  • kbpgp: Keybase 用 JS 实现的 PGP 程序

密码管理

编码

  • https://www.punycoder.com/ : Punycode

知识管理

搜索引擎

邮件

  • Newton: 邮件客户端。也支持移动端
  • mjml: 邮件模板语言
  • https://www.mailgun.com/ : 发邮件的服务
  • http://mailchimp.com/ : 搭建邮件&发邮件的服务
  • nodemailer: 邮件类库 (NodeJS)

翻译

  • Poedit: .po 翻译软件 。价格太贵,大版本升级坑。暂无替代方案
  • OpenCC: 中文简体与繁体转换
  • https://www.deepl.com/ : 基于 AI 的翻译器
  • Grammarly: 提供英文语法纠错的 Web 服务。有 Chrome 插件,体验不错。

Windows App

  • PowerToys: Windows 官方出品的生产力工具:唤醒工具,颜色选取器,窗口管理器,预览窗口,图像大小调整器,键盘管理器,批量重命名,类似 Spotlight 的启动器,快捷键指南
  • Windows 包管理器
  • WSLg: 让 WSL 支持 GUI 环境

Mac App

  • Awesome macOS open source applications
  • m-cli: 很方便的 Mac 相关的命令行工具
  • quick-look-plugins: Mac 文件 Quick Look 插件。在 Finder 中按空格预览
  • Nativefier: 网页应用打包成 Mac App
  • Homebrew: Mac 软件管理器
  • Homebrew Cask: Mac App 软件管理器
  • mas: 用命令操作 Mac App Store
  • gnu-sed: gnu 版本的 sed #brew
  • gnupg2: gpg 加密
  • Kaleidoscope: Diff GUI 软件
  • Bartender: Mac 菜单栏折叠
  • iStat Menus: Mac 系统状态监控
    • stats: 开源替代方案
  • Alfred: 类似 spotlight
    • alfy: JS 语法编写 Alfred Workflow
    • dext: 类似 Alfred,JS 写的 launcher
    • Lacona: 类似 spotlight。但更酷
  • Phoenix: Mac 窗口管理器,用 JS 编程
    • hammerspoon: 类似 Apple Script,用 Lua 脚本编写程序,支持键盘等事件监听
    • mjolnir
  • CleanShot X: 用户体验很优秀。价格略贵。支持截图/窗口截图/截屏/滚动截屏/录屏/录音/OCR 识别/标注
    • Monosnap: 免费又强大的截图/截屏/录屏(支持 GIF 和 MP4)。不支持滚动截屏。
    • iShot: 支持截图/截屏/滚动截屏/录屏/录音/OCR 识别/标注。过了试用期后能用,但是图片会带水印。
    • Mac 系统自带截图工具。不支持滚动截屏,其他功能都有。Safari 支持滚动截屏。
    • screencapture: Mac 自带命令,截图/截屏工具。
    • Snipaste: windows 截图/截屏工具
  • Copyless: 系统剪切板管理器
  • Yoink: 临时桌面文件
  • Noizio: 白噪音
  • HazeOver: 通过虚化所有的背景窗口,自动突出显示前方的应用窗口
  • AppCleaner: 删除 Mac App 用
  • Gas Mask: hosts 管理器
  • Amphetamine: 控制 Mac 系统不休眠,可定时
  • Xee: 图片浏览器
  • Vox: 音乐播放器
  • iina: 视频播放器。基于 mpv 开发
  • HyperDock: Mac Dock 栏增强
  • mounty: 让 Mac 支持 NTFS 文件系统
  • DaisyDisk: 硬盘数据占用空间可视化分析。非常好用!
  • CmdTap: 任务切换器增强
    • Contexts: 这个看起来更好用,但是更贵
  • Pixave: 素材管理器
  • LittleSnitch: 实时监控应用的网络流量
  • Micro Snitch: 实时监控 Mac 电脑的摄像头、声音输入是否开启
  • Sloth: 查看进程相关的文件。lsof 的 GUI 版
  • ColorSlurp: 取色器,免费的。
    • Sip: 备选方案。体验更好。价格贵,年付。
  • Awesome MacOS 屏保
  • https://dynamicwallpaper.club/ : 创建动态壁纸
  • Lepton: Gist 管理应用
  • keycastr: 键盘按下哪个键展示在屏幕上
  • Carbon Copy Cloner: 吊打 Time Machine 的备份软件
  • alt-tab-macos: windows 风格的 Tab 切换
  • vimac: 用键盘滚动和点击程序(vim 风格)
  • https://objective-see.com/products.html : Mac 平台的开源安全工具,都挺不错的

字体

Design

Emoji

  • https://emojipedia.org/
  • http://www.emoji-cheat-sheet.com
  • http://unicode.org/emoji/charts-beta/full-emoji-list.html

命名

  • codelf: 解决命名烦恼
  • https://namelix.com/ : 解决项目命名困难
  • https://namae.dev/ : 检查名称是否已存在

团队协作

  • airtable: 商业方案,小团队免费
    • nocodb: 备选方案。开源的

服务 (Service)

  • PlantUML Gist: 基于托管在 Gist 的 PlantUML 在线生成 UML 图
  • Pushbullet: 设备间消息推送
  • 在线 sed 编辑器
  • codepile: 可协作式网页端编辑器
  • https://unicode-table.com/cn/
  • Wikiwand: Wikipedia Modernized。非常漂亮的 Wikipedia 阅读器
  • https://www.vectorizer.io/ : 位图转成矢量图 (SVG)
  • http://ping.pe/ : ip 信息查询
    • https://ifconfig.me/ : 查询当前出口 IP
  • https://www.uuidgenerator.net/ : uuid 生成器
  • https://sm.ms/ : 免费公益的图床
  • https://cowtransfer.com/ : 临时文件分享,很好用。国内服务
  • https://extendsclass.com/ : 在线工具集合,有语法校验器,加/解密,格式转换,Diff 工具,各种生成器,前端压缩等工具。
  • https://travis-ci.com/ : CI 服务
  • https://www.clahub.com/ : CLA 签署服务,开源托管。源码
  • https://tool.chinaz.com/ : 网站网络状态排查工具 (国内)
  • https://check-host.net/ : 网站网络状态排查工具 (国外)
  • mattermost: slack 的开源替代品。即时聊天。
  • docker-nfs-server: A lightweight, robust, flexible, and containerized NFS server.
  • https://alternativeto.net/ : 搜索软件或服务其他替代方案
  • https://snapdrop.net/ : 通过网页在局域网内端到端传输文件

爬虫代理池

伪数据

  • https://jsonplaceholder.typicode.com/
  • http://dummy.restapiexample.com/
  • 临时接收手机短信
    • https://sms24.me/en/ (这个有中国号码,下面那些没有)
    • https://jiemahao.com/
    • https://yunduanxin.net/Countries/
    • https://pingme.tel/receive-sms-online-cn/

静态文件托管

  • http://surge.sh Static web publishing for Front-End Developers. 设计非常优雅,强烈推荐!
  • https://www.netlify.com/

CMS

  • headless cms
  • strapi
  • Ghost
  • netlify-cms: 基于 Git 服务(比如 github、gitlab)的 Open API 的 CMS。开源项目挺有用。商业项目不适合用。
  • ROAPI: 把数据源直接以 GraphQL、SQL、RESTful API 暴露。
  • keystone: Headless CMS. Built with GraphQL and React

PaaS

PAAS comparison - Dokku vs Flynn vs Deis vs Kubernetes vs Docker Swarm (2017)

Serverless

microVM

  • firecracker: Secure and fast microVMs for serverless computing。AWS 出品
  • weaveworks/ignite: a declarative Firecracker microVM administration tool
  • kubevirt: 「待评价」KubeVirt is a virtual machine management add-on for Kubernetes. The aim is to provide a common ground for virtualization solutions on top of Kubernetes.
    • https://katacontainers.io/ : 备选方案

跳板机/堡垒机

REPL

  • repl.it: 运行在浏览器的 REPL
  • runkit: 非常酷!在前端直接引用 npm 包编写代码
  • https://codesandbox.io

正则表达式 (Regex)

数据可视化

地图

日志

  • goaccess: GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems or through your browser.

电子书

  • https://bookfere.com/tools

交互式 Notebook

  • Jupyter: 交互式可编程的 notebook,主要支持 python。也可扩展支持其他语言
  • JupyterLab: Jupyter 新的 Web 界面。
  • nteract: 基于 Jupyter 的前端跨平台项目
  • 吃灰但值得一看的项目
    • EVE: 「团队解散」非常酷的概念,Literate Programming 的一种实现,Medium 式编程。
    • kajero: 「无人维护」Interactive JavaScript notebooks with clever graphing
  • https://mybinder.org/

Lua

Python

Golang

NodeJS

TypeScript

WebAssembly

前端开发

Docker

K8S/Kubernetes

硬件

虚拟化

  • Proxmox VE: 开源方案,基于 Debian 开发的 Linux 系统。支持 KVM 和 LXC。
  • VirtualBox: 家用、商用方案
  • Vagrant: 家用、商用方案
    • https://app.vagrantup.com/ : vagrant box 仓库
    • vagrant-vbguest: 安装 VirtualBox Guest Additions 以支持宿主机与虚拟机共享目录的双向同步
    • Vagrant Manager: Vagrant 管理器。菜单栏工具。
    • bento: build minimal Vagrant baseboxes
    • vagrant-scp: Vagrant 支持 scp

libvirt/KVM

  • KVM: 开源免费,最强大的虚拟化工具
  • kimchi: Kimchi manages KVM guests through libvirt. The management interface is accessed over the web using a browser that supports HTML5.
  • WebVirtCloud: virtualization web interface for admins and users
  • barrier: KVM switch over http

模板引擎

TeX/LaTeX

Slide/Presentation

  • slidev: https://sli.dev/
  • spectacle: 基于 React 写的 slide
  • bespoke: DIY Presentation Micro-Framework
  • impress.js: 类似 prezi.com 的 slide 框架
  • nodeppt: 这可能是迄今为止最好的网页版演示库
  • https://slides.com/ : 基于 reveal.js 的服务,非常好用,但是国内要翻墙
  • mdx-deck: 基于 MDX 写 slide

文档

  • Dash: 查看文档
    • http://devdocs.io/ : 查看文档。开源的 https://github.com/Thibaut/devdocs/
    • zealdocs: 查看文档。备选

文档系统

  • AppFlowy: 类似 Notion 的笔记系统。基于 Flutter 和 Rust 开发
  • outline: 类似 Notion 的知识库、WIKI 平台
  • Notion: 笔记工具
    • https://timelinetool.app/notion/event : 统计公开链接的 PV 的 embed 插件
  • 基于 Notion 的网站
  • wiki.js: 现代化的 WIKI。AGPL-3.0 License
  • sphinx-doc: reStructuredText 文档渲染工具

文档处理

  • pandoc: 各种格式的文档转换工具
  • unified: https://unified.js.org/
  • remark: markdown processor
  • rehype: HTML processor
  • carbon: 代码转成图片
  • mdx: Markdown + JSX = MDX。支持模块导入和导出,支持 React 组件。写 Web 文档利器。
  • 盤古之白: 给文档加空格

Markdown

  • grip: Markdown 即时渲染服务器
    • vmd: Markdown 即时渲染应用。备选方案
  • json2md: 非常灵活的 Markdown 生成工具,容易自己定制功能
  • markdown-toc: 根据 markdown heading 文本输出 TOC

Changelog

  • http://keepachangelog.com/ Changelog 书写规约

badges

Hash

图像处理

  • ImageMagick: 图像处理系统,支持 200 多种格式,包括: PNG, JPEG, JPEG-2000, GIF, TIFF, DPX, EXR, WebP, Postscript, PDF, SVG。
  • GraphicsMagick: ImageMagick 的一个分支。没有社区讨论,文档示例太少,学习门槛较高。
    • ImageMagick 与 GraphicsMagick 的由来和区别介绍: https://www.linux.com/news/imagemagick-or-graphicsmagick
  • gm: NodeJS 封装 GraphicsMagick and ImageMagick
  • jimp: 用 JS 写的图像处理类库
  • ImageOptim: 开源的图像压缩优化工具
    • Caesium: 开源的,跨平台,图像压缩工具
  • https://www.iloveimg.com/zh-cn : 在线压缩、调整大小、加水印、格式转换的图片处理服务
    • https://docsmall.com : GIF 压缩比很高
  • GIF Brewery 3: GIF 制作工具。App Store 内购买。
  • Gifski: 视频转 GIF。开源的。
  • pixelmatch: The smallest, simplest and fastest JavaScript pixel-level image comparison library
  • libvips: A fast image processing library with low memory needs.
  • squoosh: 图片格式转换、压缩工具。支持浏览器和命令行

视频处理

压缩/解压

  • zstd: 压缩比率、速度都很高。
  • snappy: 速度非常快,但压缩比低。
  • mozjpeg: mozilla 出品的 JPEG 图像压缩算法,压缩率很高

Steganography

参考文章

  • stego-toolkit: 这套隐写工具集很棒,集成了 mp3、wav、纯文本、png、jpg 隐写到图片里

OCR

Android

  • awesome-adb: ADB,即 Android Debug Bridge,它是 Android 开发/测试人员不可替代的强大工具,也是 Android 设备玩家的好玩具。
  • Termux: 安卓系统下的终端程序
    • 使用 termux-change-repo 可以更改镜源像
    • termux-packages: termux
    • termux-style: 改变 termux 的终端样式和字体
    • termux-api: 通过命令调用系统 API
    • termux-services: termux 默认没有 systemd 这类服务管理器,因此要装这个来支持服务管理。
  • f-droid: 安卓开源应用市场

视频/音频

  • Monosnap: 支持 GIF 和 MP4 的录屏
    • kap: 用户体验很好的,开源的录屏工具
  • OBS: 非常好用的推流和录制工具。免费。
  • Sound Siphon: Mac 下最好用的音频录制工具。能创建虚拟输入设备。能把任何应用的音频输出转发到另一个应用上。价格有点贵。
    • loopback: 类似的备选方案,价格更贵
    • Audio Hijack: 专业录音工具。不能创建虚拟设备。
  • forecast: MP3 metadata 编辑器。做播客会用到。
  • mpv: 跨平台的媒体播放器,支持命令行

音乐

  • MuseScore: 开源的打谱软件
  • https://musescore.com/ : MuseScore 曲谱分享平台。包含可视化弹奏等强大功能。大部分功能收费。
  • http://etaaudio.com/ : 遵循 CC 协议分享的音乐库

知识图谱

互联网关键词趋势

自然语言处理 (NLP)

  • https://github.com/apachecn/AiLearning
  • https://github.com/crownpku/Awesome-Chinese-NLP
  • HanLP: 一系列中文信息处理的工具库
  • fastNLP: A Modularized and Extensible NLP Framework
  • 小明 NLP: 提供中文分词, 词性标注, 拼写检查,文本转拼音,情感分析,文本摘要,偏旁部首

Corpus 语料库

  • https://github.com/search?q=Corpus&ref=opensearch&s=stars

信息提取 (Information Extraction)

  • https://prodi.gy/ : 界面和功能很强大
  • snorkel: A system for rapidly creating, modeling, and managing training data with weak supervision
  • Information-Extraction-Chinese: 中文实体识别与关系提取
  • YEDDA: 支持中文
  • funNLP: 一系列信息提取的工具库
  • UBIAI: Easy-to-use text annotation tool for teams with most comprehensive auto-annotation features. Supports NER, relations and document classification as well as OCR annotation for invoice labeling.

Word Segment 分词

自然语言生成 (NLG)

语音识别

语音转文字

运营

  • https://lab.lyric.im/wxformat/ : Markdown 转微信公众号排版的工具
  • Wechatsync: 一键多平台同步发布文章。支持微信公众号、知乎、微博、今日头条、BiliBili、WordPress、简书、掘金、typecho 等平台

中国特色

人文

Funny

开发需要娱乐

  • curl wttr.in: 查看天气预报,https://github.com/chubin/wttr.in
  • sl: 开火车
  • nyancat: NyanCat
  • nyancat.js: 刷屏利器
  • doge: Doge
  • jsfuck
  • Tickeys: 用 mac 键盘打出机械键盘的感觉。还有打字机、剑气...
  • Mac 命令 say: say hello, say 你好, say こんにちは
  • lolcat: rainbow cat
  • haxor-news: 终端版 hacker news
  • wtf: 英文缩写解释工具。使用介绍
  • pm: 包管理可视化
  • sorry: 为所欲为 GIF 制作器
  • avataaars generator: 很有趣的头像生成器。源码
  • logoly: Pornhub 风格 Logo 生成器
  • browsh: 运行在终端的网页浏览器
  • rockstar: 写的不是代码,是诗
  • windows95: 💩🚀 Windows 95 in Electron.
  • v86: 浏览器或 NodeJS 里运行 x86 系统。
  • cowsay and ponysay
  • countdown: 终端倒计时
  • weird-fonts: 𝒕𝒖𝒓𝒏 𝒂𝒍𝒑𝒉𝒂𝒏𝒖𝒎𝒆𝒓𝒊𝒄 𝒄𝒉𝒂𝒓𝒂𝒄𝒕𝒆𝒓𝒔 𝒊𝒏𝒕𝒐 𝒘𝒆𝒊𝒓𝒅 𝒇𝒐𝒏𝒕 𝒔𝒕𝒚𝒍𝒆.
  • pxltrm: 终端里的画图板
  • Bash-Snippets: A collection of small bash scripts for heavy terminal users
  • pipes.sh: 超级酷的终端屏保(管道主题)
  • no-more-secrets: 超级酷的终端数据解密特效

Game

教你搜索

  • http://lmgtfy.com/ : 帮你 google/bing/duckduckgo
  • http://www.baidu-x.com/ : 帮你百度下

待评价

机器学习


别人的工具列表

⬆ 返回顶部