程序员知识库示例库
本文为软件开发者设计一个 Obsidian 知识库,涵盖代码片段管理、技术笔记、项目文档和学习追踪。
文件夹结构
text
📦 开发者仓库/
├── 00-Inbox/ # 快速记录
├── 01-Projects/ # 项目文档
│ ├── Project-A/
│ │ ├── 设计/
│ │ ├── 日志/
│ │ └── API/
│ └── Project-B/
├── 02-Knowledge/ # 技术知识
│ ├── 前端/
│ ├── 后端/
│ ├── DevOps/
│ ├── 数据库/
│ └── 算法/
├── 03-Snippets/ # 代码片段
│ ├── JavaScript/
│ ├── Python/
│ ├── Shell/
│ └── SQL/
├── 04-LeetCode/ # 刷题记录
├── 05-Learning/ # 学习计划
├── Templates/ # 模板
├── Attachments/ # 附件
└── 📋 Dev-MOC.md # 开发索引插件配置
| 插件 | 开发用途 |
|---|---|
| Obsidian Git | 版本控制 |
| Code Styler | 代码高亮 |
| Vimrc Support | Vim 模式 |
| Execute Code | 执行代码 |
| Advanced Tables | 表格增强 |
| Dataview | 查询代码片段 |
模板
技术笔记模板
markdown
---
title: <% tp.file.title %>
date: <% tp.date.now("YYYY-MM-DD") %>
tags: []
category:
language:
---
# <% tp.file.title %>
## 概述
## 核心概念
## 代码示例
\```<% tp.system.prompt("语言") %>
<% tp.file.cursor() %>
\```
## 注意事项
## 相关链接
- [官方文档]()
- [[]]代码片段模板
markdown
---
title: <% tp.file.title %>
language: <% tp.system.prompt("语言") %>
tags: [代码片段]
created: <% tp.date.now("YYYY-MM-DD") %>
---
# <% tp.file.title %>
## 用途
## 代码
\```<% tp.frontmatter.language %>
<% tp.file.cursor() %>
\```
## 使用说明
## 来源
-项目文档模板
markdown
---
title: <% tp.file.title %>
type: project
status: 进行中
created: <% tp.date.now("YYYY-MM-DD") %>
repo:
tags: [项目]
---
# <% tp.file.title %>
## 项目概述
| 项目 | 信息 |
|------|------|
| 状态 | 进行中 |
| 仓库 | |
| 技术栈 | |
## 架构设计
## 开发日志
### <% tp.date.now("YYYY-MM-DD") %>
-
## 待办
- [ ]
## 相关笔记
- [[]]Dataview 查询
按语言统计代码片段
dataview
TABLE WITHOUT ID
language as "语言",
length(rows) as "片段数"
FROM "03-Snippets"
GROUP BY language
SORT length(rows) DESC最近技术笔记
dataview
TABLE
category as "分类",
language as "语言",
file.mtime as "更新时间"
FROM "02-Knowledge"
SORT file.mtime DESC
LIMIT 10进行中项目
dataview
TABLE status as "状态", repo as "仓库"
FROM "01-Projects"
WHERE type = "project" AND status = "进行中"开发索引 MOC
markdown
# 📋 开发索引
## 快速访问
- [[技术笔记]]
- [[代码片段]]
- [[项目列表]]
- [[学习计划]]
## 最近更新
```dataview
LIST
FROM "02-Knowledge" OR "03-Snippets"
SORT file.mtime DESC
LIMIT 5热门标签
dataview
TABLE WITHOUT ID
key as "标签",
length(rows) as "数量"
FROM "02-Knowledge" OR "03-Snippets"
FLATTEN tags as key
GROUP BY key
SORT length(rows) DESC
LIMIT 10
## Git 集成配置
### Obsidian Git 设置
```json
{
"commitMessage": "auto: update vault at {{date}}",
"autoSaveInterval": 10,
"autoPullInterval": 0,
"autoPullOnBoot": false,
"showStatusBar": true
}.gitignore
text
.obsidian/workspace.json
.obsidian/plugins/*/data.json
.trash/相关内容
- 入门示例库搭建指南 — 基础版
- 程序员工作流 — 工作流详解
- Obsidian Git — Git 集成插件