Skip to content

Commit 5820d2a

Browse files
committed
Add new documentation and updates across various services and frameworks
- Create new documentation for versitygw S3 Gateway with usage instructions. - Update storage-awesome.md to include links to S3 and nextcloud. - Revise trigger.md to remove caution notes and add versioning details. - Enhance software-awesome.md with new video editing tools. - Expand voip-glossary.md with structured glossary entries and additional terms. - Improve cookie.md with detailed SameSite cookie information and references. - Update cors.md with comprehensive CORS headers and examples. - Add configuration details for pnpm in pnpm.md. - Include img attributes in DOM documentation. - Update next-auth.md to reflect the rebranding of NextAuth to Auth.js. - Revise nodejs-version.md to include Node v24 LTS details and features. - Introduce better-auth.md for a new authentication library. - Enhance font documentation with tips on font types and installation commands. - Update font-awesome.md with additional font resources and monospace recommendations.
1 parent e6a0237 commit 5820d2a

File tree

42 files changed

+1281
-474
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+1281
-474
lines changed

.vscode/settings.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"[nft]": {
2626
"editor.defaultFormatter": "omBratteng.nftables"
2727
},
28-
"makefile.configureOnOpen": false
28+
"makefile.configureOnOpen": false,
29+
"editor.fontFamily": "Sarasa Mono SC, Maple Mono NF CN, Menlo, Monaco, 'Courier New', monospace"
2930
}

notes/ai/ai-awesome.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,11 @@ tags:
3838
- MIT, TS
3939
- MiniPerplx -> scira
4040
- minimalistic AI-powered search engine
41+
- Workflow
42+
- dify
43+
- [simstudioai/sim](https://github.com/simstudioai/sim)
44+
- Apache-2.0, TS
45+
- pgvector, socket.io, bun, next.js, Drizzle ORM, [trigger.dev](https://github.com/triggerdotdev/trigger.dev), [better-auth/better-auth](https://github.com/better-auth/better-auth), ReactFlow
4146
- Client/Desktop/App/Runner/Server
4247
- [chatbox](./service/chatbox.md)
4348
- GPLv3, TypeScript, React, Electron

notes/ai/dev/mcp.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,104 @@ tags:
4848
- eventStore: databaseEventStore
4949
- Local state with message routing - 需要本地维护状态,所有属于同一会话的请求需路由到同一节点。可通过消息队列和发布/订阅系统实现。
5050

51+
## inspector
52+
5153
```bash
5254
# 默认 http://127.0.0.1:6277/ http://127.0.0.1:6274/
5355
npx @modelcontextprotocol/inspector node build/index.js
5456

5557
# Proxy http://127.0.0.1:9000
5658
# Inspector http://127.0.0.1:8080
5759
CLIENT_PORT=8080 SERVER_PORT=9000 npx @modelcontextprotocol/inspector node build/index.js
60+
61+
npx @modelcontextprotocol/inspector --config mcp.json --server everything
62+
```
63+
64+
```json title="mcp.json"
65+
{
66+
"mcpServers": {
67+
"everything": {
68+
"command": "npx",
69+
"args": ["-y", "@modelcontextprotocol/server-everything"],
70+
"env": {
71+
"hello": "Hello MCP!"
72+
}
73+
},
74+
"jetbrains": {
75+
"command": "npx",
76+
"args": ["-y", "@jetbrains/mcp-proxy"]
77+
}
78+
}
79+
}
5880
```
5981

6082
# Spec
6183

6284
- https://www.claudemcp.com/specification
85+
86+
## JetBrains
87+
88+
- https://github.com/JetBrains/mcp-jetbrains
89+
- 安装插件 https://plugins.jetbrains.com/plugin/26071-mcp-server
90+
91+
```json
92+
{
93+
"servers": {
94+
"jetbrains": {
95+
"command": "npx",
96+
"args": ["-y", "@jetbrains/mcp-proxy"]
97+
}
98+
}
99+
}
100+
```
101+
102+
<!--
103+
document.querySelector('#radix-\\:rv\\:-content-tools > div > div:nth-child(1) > div:nth-child(2) > div')
104+
copy(Array.from($0.querySelectorAll('&>div span:nth-child(1)')).map(v=>[v.innerText,v.nextElementSibling.innerText].join('|')).join('\n'))
105+
-->
106+
107+
| tool | desc |
108+
| ----------------------------- | ------------------------------------------------------------------ |
109+
| create_new_file_with_text | 在项目指定路径创建新文件并写入内容,自动创建父目录。返回操作结果。 |
110+
| execute_action_by_id | 执行指定 ID 的编辑器操作,返回操作结果。 |
111+
| execute_terminal_command | 在终端执行指定命令,返回输出或错误。 |
112+
| find_commit_by_message | 按提交信息或关键字查找项目历史中的提交,返回匹配哈希列表。 |
113+
| find_files_by_name_substring | 按名称子串搜索项目文件,返回匹配文件列表。 |
114+
| get_all_open_file_paths | 获取当前编辑器所有打开文件的路径列表。 |
115+
| get_all_open_file_texts | 获取当前编辑器所有打开文件的内容列表。 |
116+
| get_current_file_errors | 检查当前文件的错误和警告,返回问题列表。 |
117+
| get_debugger_breakpoints | 获取项目所有断点列表,包含文件路径和行号。 |
118+
| get_file_text_by_path | 按项目相对路径获取文件内容,返回文本或错误信息。 |
119+
| get_open_in_editor_file_path | 获取当前编辑器中当前文件的绝对路径,无文件则返回空字符串。 |
120+
| get_open_in_editor_file_text | 获取当前编辑器中当前文件的全部内容,无文件则返回空字符串。 |
121+
| get_progress_indicators | 获取所有运行中的进度指示器状态。 |
122+
| get_project_dependencies | 获取项目所有依赖列表。 |
123+
| get_project_modules | 获取项目所有模块及依赖列表。 |
124+
| get_project_problems | 获取项目所有问题(错误、警告等),返回问题列表。 |
125+
| get_project_vcs_status | 获取项目版本控制状态,返回变更文件列表。 |
126+
| get_run_configurations | 获取当前项目所有运行配置列表。 |
127+
| get_selected_in_editor_text | 获取当前编辑器中当前选中的文本,无选中则返回空字符串。 |
128+
| get_terminal_text | 获取第一个活动终端的内容,无终端则返回空字符串。 |
129+
| list_available_actions | 列出编辑器所有可用操作。 |
130+
| list_directory_tree_in_folder | 递归展示指定文件夹的目录树结构,可限制深度。 |
131+
| list_files_in_folder | 列出指定项目文件夹下所有文件和目录。 |
132+
| open_file_in_editor | 打开指定文件并写入内容,需提供路径和内容。返回操作结果。 |
133+
| reformat_current_file | 格式化当前打开文件,返回操作结果。 |
134+
| reformat_file | 格式化指定文件,需提供路径。返回操作结果。 |
135+
| replace_current_file_text | 替换当前文件全部内容,需提供新内容参数。返回操作结果。 |
136+
| replace_file_text_by_path | 按路径替换指定文件全部内容,需提供新内容。返回操作结果。 |
137+
| replace_selected_text | 替换当前选中的文本,需提供新内容参数。返回操作结果。 |
138+
| replace_specific_text | 在指定文件中替换特定文本,优先使用此工具。返回操作结果。 |
139+
| run_configuration | 运行指定项目配置,最长等待 120 秒,返回输出或错误。 |
140+
| search_in_files_content | 在项目文件内容中搜索指定文本,返回匹配文件列表。 |
141+
| toggle_debugger_breakpoint | 在指定文件行切换断点,需提供文件路径和行号。返回操作结果。 |
142+
| wait | 等待指定毫秒数(默认 5000ms),完成后返回 "ok"。 |
143+
144+
- list_available_actions
145+
- 会的到所有可用的编辑器操作
146+
- 接近 3000 个操作
147+
148+
## Github Copilot
149+
150+
- https://code.visualstudio.com/mcp
151+
- https://code.visualstudio.com/docs/copilot/chat/mcp-servers

notes/cn/gb/gbt-41832.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
---
2+
ref:
3+
- GB/T 41832
4+
---
5+
6+
# GB/T 41832-2022 通用寄递地址编码规则
7+
8+
- 通用寄递地址编码规则
9+
- Universal delivery address coding rule
10+
11+
| GB/T 41832-2022 | 通用寄递地址编码规则 |
12+
| ------------------- | ------------------------------------------ |
13+
| 中国标准分类号(CCS) | A75 |
14+
| 国际标准分类号(ICS) | 03.240 |
15+
| 发布日期 | 2022-10-14 |
16+
| 实施日期 | 2023-02-01 |
17+
| 主管部门 | 国家邮政局 |
18+
| 归口部门 | 国家邮政局 |
19+
| 发布单位 | 国家市场监督管理总局、国家标准化管理委员会 |
20+
21+
- 参考
22+
- https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=173DB35E1CA95C7EF9CCA37E7E4C1A4E
23+
- 128bit
24+
25+
| part | bits | count | notes |
26+
| -------------- | ---- | -------------- | ----- |
27+
| **基础** |
28+
| 国家/地区 | 9 | 512 |
29+
| GPS系统 | 3 | 8 |
30+
| 寄递位置 | 68 | 2^68 |
31+
| 寄递位置区域 | 2 | 4 |
32+
| 校验码 | 6 | 64 | CRC |
33+
| **扩展** |
34+
| 企业码 | 18 | 262144 |
35+
| 物品和服务属性 | 22 | 2^22 = 4194304 |
36+
37+
- 寄递位置
38+
39+
| part | bits | notes |
40+
| -------- | ---- | -------------------- |
41+
| 二维网格 | 52 | GB/T 39409 |
42+
| 高度标识 | 1 | 0 - 大地高, 1 - 楼层 |
43+
| 高度编码 | 15 |
44+
45+
- 高度编码
46+
- 楼层
47+
- 1bit 地上地下
48+
- 2-14bit 楼层号
49+
- 15bit 全层/半层
50+
- 寄递位置区域
51+
- 1bit 城乡 - 城市/农村
52+
- 1bit 建制村 - 乡镇人民政府所在地建制村/非乡镇人民政府所在地建制村
53+
54+
| # | bit | 分类 | 属性 |
55+
| --- | --- | ---------- | ------------------------------------------------------ |
56+
| 1 | 3 | 物品形态 | 固体(非粉末)000、粉末001、液体010、气体011、其他预留 |
57+
| 2 | 1 | 易碎性 | 是0、否1 |
58+
| 3 | 3 | 寄递时效 | 当日达000、次日达001、72h以内010、72h以上011、其他预留 |
59+
| 4 | 1 | 保价服务 | 是0、否1 |
60+
| 5 | 1 | 代收货款 | 是0、否1 |
61+
| 6 | 1 | 签单返还 | 是0、否1 |
62+
| 7 | 1 | 生鲜冷链 | 是0、否1 |
63+
| 8 | 3 | 投递方式 | 投递到户000、投递到箱001、投递到站010、其他预留 |
64+
| 9 | 1 | 循环包装 | 是0、否1 |
65+
| 10 | 1 | 收件人付费 | 是0、否1 |
66+
| 11 | 6 | 其他 | 预留,默认000000 |

notes/culture/culture-glossary.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
tags:
3+
- Glossary
4+
---
5+
6+
# Culture Glossary
7+
8+
9+
## 顺口溜
10+
11+
```
12+
刘奶奶找牛奶奶买牛奶,牛奶奶给刘奶奶拿牛奶,刘奶奶说牛奶奶的牛奶不如柳奶奶的牛奶,牛奶奶说柳奶奶的牛奶会流奶,柳奶奶听见了大骂牛奶奶你的才会流奶,柳奶奶和牛奶奶泼牛奶吓坏了刘奶奶,大骂再也不买柳奶奶和牛奶奶的牛奶。
13+
```
14+
15+
```
16+
东边来了个喇嘛,西边来了个哑巴,喇嘛手里拎着五斤挞嘛,哑巴腰里别着个喇叭,别着喇叭的要用喇叭换手里拎着挞嘛的哑巴的挞嘛,拎着挞嘛的哑巴不愿意用挞嘛换手里拎着喇叭的喇嘛的喇叭。拎着喇叭的喇嘛用喇叭打了拎着挞嘛的哑巴,拎着挞嘛的哑巴也用挞嘛打了拎着喇叭的喇嘛。
17+
```
18+
19+
```
20+
扁担长,板凳宽,
21+
板凳没有扁担长,
22+
扁担没有板凳宽。
23+
扁担要绑在板凳上,
24+
板凳不让扁担绑在板凳上,
25+
扁担偏要绑在板凳上。
26+
最后不知道是扁担绑在了板凳上,
27+
还是板凳绑在了扁担上。
28+
```
29+
30+
```
31+
青葡萄,紫葡萄,青葡萄没籽葡萄紫,吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮。
32+
```

notes/db/relational/postgresql/postgresql-faq.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ tags:
1212

1313
:::note
1414

15+
- case-sentivity of identifiers - 表、列、函数名
16+
- 如果没有双引号,则不区分大小写,默认转换为小写
17+
- https://www.postgresql.org/docs/current/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS
1518
- 无 Foreign Key Arrays
1619
- `FOREIGN KEY (EACH ELEMENT OF userids) REFERENCES users,`
1720
- https://stackoverflow.com/a/50441059/1870054
@@ -758,7 +761,6 @@ CREATE TABLE t (
758761

759762
- 使用 pg_isready 判断是否可用
760763

761-
762764
## ERROR: could not resize shared memory segment "/PostgreSQL.2692148336" to 1073812480 bytes: No space left on device
763765

764766
- vacuum 时发生
@@ -812,7 +814,6 @@ preStop:
812814

813815
:::
814816

815-
816817
```sql
817818
create index on t (name COLLATE "C");
818819
-- 支持使用 Index

notes/db/relational/postgresql/postgresql-sql-faq.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,34 @@ SHOW max_connections;
3737
SHOW shared_buffers;
3838
SHOW default_transaction_isolation;
3939
SHOW ALL;
40+
41+
-- Database 和 Owner
42+
SELECT
43+
datname AS database_name,
44+
pg_get_userbyid(datdba) AS owner
45+
FROM
46+
pg_database;
47+
48+
-- Schema 和 Owner
49+
SELECT
50+
nspname AS schema_name,
51+
pg_get_userbyid(nspowner) AS owner
52+
FROM
53+
pg_namespace;
54+
55+
-- 表和 Owner
56+
SELECT n.nspname AS schema_name,
57+
c.relname AS table_name,
58+
pg_get_userbyid(c.relowner) AS owner
59+
FROM pg_class c
60+
JOIN
61+
pg_namespace n ON n.oid = c.relnamespace
62+
WHERE c.relkind = 'r'
63+
-- r -> relation - 普通表
64+
-- AND n.nspname = 'public'
65+
-- AND c.relname = 'customers';
66+
order by schema_name, table_name
67+
;
4068
```
4169

4270
```sql

notes/dev/date.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,3 +282,22 @@ moment.updateLocale('en', {
282282
```
283283

284284
- https://github.com/moment/momentjs.com/blob/master/docs/moment/07-customization/07-relative-time.md
285+
286+
## Calender
287+
288+
| 名称 | 英文名 | 简介 | 主要用途/地区 |
289+
| ----------- | ------------------------ | -------------------------------------------------------- | ------------------ |
290+
| 公历/格里历 | Gregorian Calendar | 目前全球最常用的历法,1582年由教皇格里高利十三世颁布。 | 国际通用、ISO标准 |
291+
| 儒略历 | Julian Calendar | 由罗马儒略·凯撒制定,公元前46年启用,后被格里历取代。 | 历史研究、东正教 |
292+
| 农历/阴阳历 | Chinese Lunar Calendar | 中国传统历法,结合太阳和月亮周期,常用于节气和传统节日。 | 中国及东亚地区 |
293+
| 伊斯兰历 | Islamic Calendar | 纯阴历,以月亮周期为基础,回历纪年。 | 伊斯兰国家 |
294+
| 犹太历 | Hebrew Calendar | 犹太教传统历法,阴阳合历。 | 犹太教、以色列 |
295+
| 佛历 | Buddhist Calendar | 基于泰国、柬埔寨等地的太阳历,纪年以佛祖涅槃为起点。 | 东南亚佛教国家 |
296+
| 印度历 | Indian National Calendar | 结合太阳和月亮周期,印度官方历法之一。 | 印度 |
297+
| 波斯历 | Persian Calendar | 太阳历,伊朗和阿富汗等地使用。 | 伊朗、阿富汗 |
298+
| 财年日历 | Fiscal Calendar | 企业或政府用于财务统计的年度周期,起止时间可自定义。 | 企业、政府 |
299+
| ISO周历 | ISO Week Calendar | ISO 8601标准,按周编号,常用于项目管理和统计。 | 国际标准、项目管理 |
300+
301+
- [Wikipedia: Calendar](https://en.wikipedia.org/wiki/Calendar)
302+
- [ISO 8601 标准](https://en.wikipedia.org/wiki/ISO_8601)
303+
- [中国农历](https://zh.wikipedia.org/wiki/农历)

notes/dev/design/api/design-api-filter.md

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,29 @@ tags:
104104
| `$bitsAnyClear` | 匹配一组位位置中任何一位为 0 的数字或二进制值。 |
105105
| `$bitsAnySet` | 匹配一组位位置中任何一位为 1 的数字或二进制值。 |
106106

107-
- https://www.mongodb.com/docs/manual/reference/operator/query/
107+
- Query & Projection
108+
- Comparison Query - $eq, $gt, $gte, $in, $lt, $lte, $ne, $nin
109+
- Logical Query - $and, $not, $nor, $or
110+
- Element Query - $exists, $type
111+
- Evaluation Query - $expr, $jsonSchema, $mod, $regex, $text, $where
112+
- Geospatial Query
113+
- Array Query - $all, $elemMatch, $size
114+
- Bitwise Query
115+
- Projection - $, $elemMatch, $slice
116+
- $expr - MongoDB 3.6+, 2018+
117+
- 字段比较
118+
- 计算
119+
- 复杂筛选逻辑
120+
- https://www.mongodb.com/docs/manual/reference/operator/query/expr/
121+
- $eq, $lt, $lte, $gt, $gte
122+
123+
```js
124+
db.monthlyBudget.find({ $expr: { $gt: ['$spent', '$budget'] } });
125+
```
126+
127+
- 参考
128+
- https://www.mongodb.com/docs/manual/reference/operator/query/
129+
- 聚合操作 https://www.mongodb.com/docs/manual/reference/operator/aggregation/
108130

109131
## mikro-orm
110132

@@ -138,7 +160,23 @@ tags:
138160
| `$none` | `<> ANY` | 查找没有任何记录符合条件的集合。 |
139161
| `$every` | | 查找所有记录均符合条件的集合。 |
140162

163+
```ts
164+
const query = [
165+
//
166+
{ [sql`(select ${1} = ${1})`]: [] },
167+
{ [raw('length(perex)')]: { $gt: 10000 } },
168+
{ [sql`lower(name)`]: name.toLowerCase() },
169+
{ time: sql`now()` },
170+
{ [raw(alias => `lower(${alias}.name)`)]: name.toLowerCase() },
171+
// 函数
172+
{ [sql.upper('title')]: 'TITLE' },
173+
// 字段引用
174+
{ foo: sql.ref('bar') },
175+
];
176+
```
177+
141178
- https://mikro-orm.io/docs/query-conditions
179+
- https://mikro-orm.io/docs/raw-queries
142180

143181
## hasura
144182

notes/dev/design/design-erp.md

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,16 +34,19 @@ tags:
3434
- https://growthmethod.com/gartner-b2b-buying-journey/
3535
- https://www.forrester.com/b2b-marketing/b2b-marketing-strategy/
3636

37-
| abbr. | stand for | meaning |
38-
| ----- | ----------------------------------- | ----------------------------- | -------------- |
39-
| CRM | Customer Relationship Management | 客户关系管理 |
40-
| AIDA | Attention, Interest, Desire, Action | 注意、兴趣、欲望、行动 |
41-
| ICP | Ideal Customer Profile | 理想客户画像 |
42-
| ABM | Account-Based Marketing | 基于账户的营销 |
43-
| SDR | Sales Development Representative | 销售开发代表 |
44-
| MQL | Marketing Qualified Lead | 营销合格线索 |
45-
| SQL | Sales Qualified Lead | 销售合格线索 |
46-
| MAP | | Marketing Automation Platform | 营销自动化平台 |
37+
| abbr. | stand for | meaning |
38+
| ----- | --------------------------------------- | ---------------------- |
39+
| CRM | Customer Relationship Management | 客户关系管理 |
40+
| AIDA | Attention, Interest, Desire, Action | 注意、兴趣、欲望、行动 |
41+
| ICP | Ideal Customer Profile | 理想客户画像 |
42+
| ABM | Account-Based Marketing | 基于账户的营销 |
43+
| SDR | Sales Development Representative | 销售开发代表 |
44+
| MQL | Marketing Qualified Lead | 营销合格线索 |
45+
| SQL | Sales Qualified Lead | 销售合格线索 |
46+
| MAP | Marketing Automation Platform | 营销自动化平台 |
47+
| IVR | Inbound Voice Response | 入站语音响应 |
48+
| OCIC | Omnichannel Customer Interaction Center | 全渠道客户互动中心 |
49+
| ACW | After Call Work | 通话后工作 |
4750

4851
| en | cn | notes |
4952
| ---------------------- | ------------- | -------------------------------- |

0 commit comments

Comments
 (0)