构建 VSCode 扩展:第一部分
我一直在寻找一个有趣的业余项目来打发空闲时间。做项目是提升开发者技能的最佳途径。我决定尝试公开记录我的开发历程,分享我的想法和决定。
我要建造什么?
我花了大量时间进行时间管理。日常任务管理一直是我需要改进的地方。我现在会把当天的计划都写在笔记本里。笔记本虽然好用,但除了按日期和顺序整理任务之外,其他方式就比较麻烦了。我该如何动态地按项目分组,根据一天的进度调整优先级,并将它们延到第二天,而不用重新编写呢?我决定创建一个内置于 VSCode 的任务管理器。
我确信其他扩展已经实现了这个功能,但这不是重点。我的计划是利用这次学习经验,构建一个专门为我设计的扩展。我需要确定哪些功能重要,以及它们如何与我的工作流程紧密结合。
我正在解决的问题
- 作为一名程序员,我每天大部分时间都在电脑上打开 VSCode。如果能把我所有项目的任务都集中到一个地方就好了。
- 我想要一个类似于 Trello 的板,我可以轻松地单击并拖动以在状态之间移动任务并调整优先级。
- 我的大部分日常笔记都是用 Markdown 格式保存在仓库里的。如果能用 Foam 之类的工具把我的笔记链接到 Wiki 链接就更好了。
思考技术栈
我计划使用的技术栈:
- TypeScript
- Vscode 的 API 已经使用它了。
- ReactJS
- 这可能有点过头了,但为什么不呢。
- Tailwind CSS
- 我希望能够轻松地设置 webview 的样式,并且我喜欢使用实用程序类来设置样式。
- Markdown
- 我已经用 Markdown 记笔记了,这样可以更轻松地与 foam 集成。
- GitHub Markdown 有一个我可以利用的任务类语法,然后您就不必使用扩展来管理您的任务。