技术文档必备工具:注释目录树神器 Annotree,我的第一个正式开源项目
hi,大家好,我是爱听书的程序员阿超
非常开心能在这里介绍我的第一个正式开源项目 Annotree,项目具体情况如下,请继续阅读~

Annotree 注释树
一款生成带注释的目录树工具,大大方便技术文档的编写
项目介绍
本项目基于 folder-explorer 进行二次开发,感谢 FairyEver 的创意和贡献!
- GitHub 地址:https://github.com/itchaox/annotree
- 官方文档:https://www.annotree.com
- 视频讲解:https://www.bilibili.com/video/BV1fS421R7UM
这是我在 B 站发布的第 2 个技术视频,如果对你有帮助的话,感谢一键三连,加关注~
- 使用场景:编写技术文档的目录注释树,帮助你高效地编写技术文档。
效果演示 ︎

官方文档首页

功能展示
扫描
点击扫描按钮后打开文件选择器,选择需要扫描的文件夹,即可开始扫描。

自动打开文件
导出文件后自动打开。

忽略文件夹
忽略不需要扫描的文件夹,避免性能损失甚至程序失去响应,比如:node_modules 文件夹,程序内部已自动忽略 node_modules 文件夹。

忽略以 "." 开头的文件夹
这类文件夹在 MacOS 和 Linux 上是默认隐藏的文件夹。

只扫描文件夹
忽略所有文件,只扫描文件夹。

忽略以 "." 开头的文件
这类文件在 MacOS 和 Linux 上是默认隐藏的文件。

忽略文件类型
在扫描一次后,会生成此次扫描后的所有文件类型,可以选择忽略不需要的文件类型,以提高扫描效率。

扫描深度
设置扫描目录的深度,0 为所有深度,每递增一个数字则代表扫描深度 +1。

默认名称
导出文本的默认名称配置。

注释格式化
填充注释的格式

桥梁最短字符数
路径最长的地方,显示的桥梁字符数

桥梁填充字符
输入一个单字节填充字符,比如:*,#,$,-,@,_ 等。

始终显示桥梁
配置没有注释的地方是否显示桥梁。

导出
设置好相关配置,编写好注释后,导出注释目录树。

下载地址 ️

反馈渠道
如果你有任何意见或建议,欢迎通过以下方式与我联系:
- 提交 GitHub Issue
- 飞书群 点击入群
我为何选择飞书群作为社区沟通渠道:
- 我平时飞书用的较多,沟通方便。
- 飞书话题群沟通问题,效率更高。
开发 Annotree 的故事 ️
本项目基于 folder-explorer 进行二次开发,感谢 FairyEver 的创意和贡献!
起源
- 2023 年 6 月,我负责搭建公司内部前端基础框架。框架搭建完成后,我希望通过注释来帮助团队成员快速理解目录结构。
- 我发现 tree 命令可以扫描项目目录结构,但注释需要手动添加,不够便捷。
- 之后发现了 folder-explorer,这个工具提供了目录注释和对齐功能,但仍不完全符合我的需求。
- 为了解决上述问题,我基于 folder-explorer 进行了二次开发,创建了 Annotree。
- 由于其他工作和对 Electron 不熟悉,直到 2024 年 7 月我才开始开发 Annotree。
为何二次开发
- folder-explorer 的部分功能对我而言冗余,不符合我的使用习惯。
- folder-explorer 导出文本后才看到效果,我希望有实时预览功能。
- folder-explorer 编辑备注需要右键打开菜单,操作不便。
期望
- 这是我做的第一个正式开源项目,大家的反馈和支持,对我很重要 ,谢谢
- 现在项目还处于快速迭代中,期待大家的反馈与 pr,期待与大家一起共建更好的 Annotree
致谢
- 感谢 electron-vite 提供的 electron 框架,大大提升我的开发效率。
- 感谢 md 提供给我的 README.md 文档思路。
谁在使用
如果你使用了本 Annotree 工具生成带注释的项目文件树形结构,并且希望在本项目 README 中展示你的项目,请到 Discussions #2 留言。
技术文档必备工具:注释目录树神器 Annotree,我的第一个正式开源项目的更多相关文章
- showdoc 开源在线api&&技术文档管理工具
showdoc 是一个很不错的api 以及技术文档管理工具 环境准备 doker-copose 文件 version: "3" services: doc: image: regi ...
- 技术文档生成工具:appledoc
做项目一般都会要求写技术文档,特别是提供SDK或者基础组件的.如果手写这类技术文档的话,工作量比编写代码也少不了多少.比如 Java 语言本身就自带 javadoc 命令,可以从源码中抽取文档.本篇我 ...
- DBImport v3.44 中文版发布:数据库数据互导及文档生成工具(IT人员必备)
前言: 距离上一个版本V3.3版本的文章发布,已经是1年10个月前的事了. 其实版本一直在更新,但也没什么大的功能更新,总体比较稳定,所以也不怎么写文介绍了. 至于工作上的事,之前有半年时间跑去学英语 ...
- 使用Jupyter Notebook编写技术文档
1.jupyter Notebook的组成 这里它的组件及其工程构成,帮助大家更好的用好jupyter Notebook 组件 Jupyter Notebook结合了三个组件: 笔记本Web应用程序: ...
- .NET平台开源项目速览(4).NET文档生成工具ADB及使用
很久以前就使用ADB这个工具来生成项目的帮助文档.功能强大,在学习一些开源项目的过程中,官方没有提供CHM帮助文档,所以为了快速的了解项目结构和注释.就生成文档来自己看,非常好用.这也是一个学习方法吧 ...
- (转)Doxygen文档生成工具
http://blog.csdn.net/lostaway/article/details/6446786 Doxygen 是一个支持 C/C++,以及其它多种语言的跨平台文档生成工具.如同 Java ...
- Kafka 技术文档
Kafka 技术文档 目录 1 Kafka创建背景 2 Kafka简介 3 Kafka好处 3.1 解耦 3.2 冗余 3.3 扩展性 3.4 灵活性 & 峰值处理能力 3.5 可恢复性 ...
- RabbitMq 技术文档
RabbitMq 技术文档 目录 1 AMQP简介 2 AMQP的实现 3 RabbitMQ简介 3.1 概念说明 3.2 消息队列的使用过程 3.3 RabbitMQ的特性 4 RabbitMQ使用 ...
- [转]unity3d 脚本参考-技术文档
unity3d 脚本参考-技术文档 核心提示:一.脚本概览这是一个关于Unity内部脚本如何工作的简单概览.Unity内部的脚本,是通过附加自定义脚本对象到游戏物体组成的.在脚本对象内部不同志的函数被 ...
- 使用Objective-C的文档生成工具:appledoc
使用Objective-C的文档生成工具:appledoc 前言 做项目的人多了,就需要文档了.今天开始尝试写一些项目文档.但是就源代码来说,文档最好和源码在一起,这样更新起来更加方便和顺手.象 Ja ...
随机推荐
- P1683 入门
传送锚点:https://www.luogu.com.cn/problem/P1683 题目描述 不是任何人都可以进入桃花岛的,黄药师最讨厌像郭靖一样呆头呆脑的人.所以,他在桃花岛的唯一入口处修了一条 ...
- Pandas学习之路【1】
安装pandas: pip install pandas pandas读取数据: 数据类型 读取方式 csv, tsv, txt pd.read_csv Excel pd.read_excel mys ...
- HTML——select下拉选择标签
select的基本语法: <select> <option></option> </select> 例子: <p>籍贯: <selec ...
- json 编码后导致数字变为科学计数,从而导致解码后签名与编码前签名不正确的解决办法。
docoder := json.NewDecoder(strings.NewReader(string(originData))) docoder.UseNumber() _ = docoder.De ...
- vim 多文件编辑
使用vim打开多个文件 vim可以同时打开好几个文件同时进行编辑 [root@localhost opt]# vim ip.txt time.txt 2 files to edit ens32: fl ...
- Qt OPC UA通信
介绍 OPC UA全称Open Platform Unified Architecture,开放平台统一架构,是工业自动化领域通用的数据交换协议,它有两套主要的通信机制:1.客户端-服务器通信:2.发 ...
- INFINI Labs 产品更新 | Easysearch 1.8.2 发布优化 CCR 性能
INFINI Labs 产品又更新啦~,包括 Easysearch v1.8.0.Gateway.Console.Agent.Loadgen v1.25.0.本次各产品更新了很多亮点功能,如 Easy ...
- 如何排查常规软件问题 - 面向 Linux 初级用户的教程
笔者从 14 年做开源软件以来,接触了众多 Linux 新手用户,这里我为这类用户总结了一些常见的问题排查方法,希望能帮助到大家.如果你已经工作多年,对于下面提到的思路和方法应该非常熟悉,如果对某一条 ...
- python 简单剖析及语法基础
1.Python的应用领域 WEB开发 网络编程 爬虫 云计算 人工智能.数据分析 自动化运维 金融分析 科学运算 游戏开发 2.Python的发展前景 知乎上有一篇文章,问Python未来10 ...
- Vue学习:15.组件化开发
组件化开发 组件化开发是一种软件开发方法,它将应用程序拆分成独立的.可重用的模块,每个模块都被称为组件.这些组件可以独立开发.测试.维护和部署,从而提高了代码的可维护性.可扩展性和复用性.在前端开发中 ...