imbytecat
|
695e826dcf
|
refactor(types): 消除非必要 as 逃逸,锁紧 strict 政策
按 Oracle 复核处置全仓 5 处类型断言:
- fields.ts: as const → satisfies Record<GeneratedFieldKey, true>
- compile.ts: as readonly string[] → ReadonlySet<string>.has()
- embed-migrations.ts: JSON.parse as Journal → Zod schema 运行时校验,JSON.parse 显式 unknown
- interceptors.ts: 唯一保留的跨包断言(ORPC→Zod)注释扩写为完整背景
- router.tsx: satisfies 非 cast,保留
biome.json 增配 noExplicitAny / noTsIgnore / noNonNullAssertion,防止后续漂移。
|
2026-04-25 14:23:08 +08:00 |
|
imbytecat
|
7e27640a26
|
feat(deploy): migrations 嵌入二进制,实现真单文件部署
- embed-migrations.ts:扫 ./drizzle/meta/_journal.json,生成 src/server/db/migrations.gen.ts,每条 SQL 通过 `import sql_<idx> from '../../../drizzle/<tag>.sql' with { type: 'text' }` 在 bun build --compile 时被静态嵌入二进制
- migrate.ts 重写:runtime 用 createHash('sha256') 计算迁移哈希,仅用 db.execute(sql) + db.transaction() 公开 API 写入 drizzle.__drizzle_migrations 簿记表(不依赖 @internal 的 db.dialect/db.session)
- db:generate 链 db:embed,保证 SQL 改动总是同步到 migrations.gen.ts
- Dockerfile 删 COPY drizzle/,binary 是部署唯一 artifact
- 同步 README / AGENTS / biome.json
|
2026-04-25 14:05:58 +08:00 |
|
imbytecat
|
6dc7f9f791
|
test: 启用 bun test 并补 todo contract 示例
- package.json 加 "test": "bun test"
- todo.contract.test.ts 给 starter 一个可复制的 colocated 测试样板
覆盖 valid input / missing field / wrong type 三种 case
|
2026-04-25 13:31:34 +08:00 |
|
imbytecat
|
8f7744ca0d
|
feat(server): 新增统一 logger 入口与 /health liveness 端点
- src/server/logger.ts 包一层 console.*,给后续 pino/otel 迁移留单点
- interceptors.ts 的 logError 改走 logger.error,业务侧禁止直接 console.*
- /health 返回 'ok',纯 liveness(不查 DB),DB 挂时探活仍绿
|
2026-04-25 13:31:25 +08:00 |
|
imbytecat
|
830c908712
|
refactor(arch): 移除 experimental_defaults,提炼 useInvalidateTodos,闭环若干悬挂配置
- orpc.ts: 改为纯 createTanstackQueryUtils,不再依赖 experimental_ API
- 抽出 src/client/queries/todo.ts 的 useInvalidateTodos,避免 query key 散落页面
- shutdown: setTimeout 内 db.$client.end() 失败也走 process.exit
- 删除 db/index.ts 未被使用的 DB 类型导出
- 删除 env.ts 未被消费的 VITE_APP_TITLE,根 title 改为 package.json name
- 清理 routes/index.tsx 的 JSX 区段注释、compose.yaml 注释掉的端口块、robots.txt URL 注释
|
2026-04-25 13:31:16 +08:00 |
|
imbytecat
|
2c5bceb826
|
fix(deploy): 端到端跑通编译二进制 + docker compose
端到端验证时发现 4 处细节,一起补上:
1. bin.ts 漏了 default: 'serve'——CMD ["./server"] 会直接吐 help 而
不是起服务(在 compose 里 app 立刻 exit)。citty 原生支持 default
2. Dockerfile 在 bun install 之前就要 COPY patches/,否则 package.json
的 patchedDependencies 找不到补丁文件,install 失败
3. drizzle/ 目录在仓库里必须存在(带 .gitkeep),否则 Dockerfile 末尾
COPY drizzle/ 到运行镜像会失败
4. migrate.ts 之前只检查 ./drizzle 目录是否存在就跳过——空目录时仍会
进到 drizzle 的 readMigrationFiles,报 Can't find meta/_journal.json。
改成检查 meta/_journal.json 是否存在,更准确地区分"还没生成过迁移"
与"有迁移待应用"
验证路径:
- docker compose up -d --build → migrate 完成退出 → app 健康
- curl /api/spec.json → 200,OpenAPI 文档含 todo.{list,create,update,remove}
|
2026-04-24 20:43:36 +08:00 |
|
imbytecat
|
22ac02cbc6
|
refactor(db): 精简 generatedFields,删三分支 PK 策略与泛型 keys 工具
- PK 策略原本给了 native(PG18)/extension/app-side 三条路,对 base 项目
是 YAGNI。全部落到最稳妥的 $defaultFn(uuidv7):任意 PG 版本都能跑,
不依赖扩展或 18+ 的 uuidv7() 原生函数
- createGeneratedFieldKeys 泛型 reduce 只为了生成 { id: true, createdAt:
true, updatedAt: true } 这三项,直接手写 as const 更直观
- 删掉 pk/id/createdAt/updatedAt 的独立 helper 导出——没人引用,它们
只是 generatedFields 的内部组合
|
2026-04-24 20:37:51 +08:00 |
|
imbytecat
|
2678a53034
|
refactor(api): 删掉 db ORPC middleware,handler 直接用 db
db middleware 的存在只是为了把 db 注入到 ORPC context——这是 Cloudflare
Workers / 多租户场景的模式(db 依赖 per-request 的 env binding)。在
Bun 单进程 + 模块级 const db 下,这层中间件是纯粹的仪式:一行 import
直接拿到 db,反而更清晰。
- 删除 src/server/api/middlewares/ 整个目录(不留空脚手架,KISS)
- context.ts 去掉 DBContext 与示例注释,只留 BaseContext { headers }
作为未来 auth/tenant 等 middleware 的扩展点
- routers/todo.router.ts 不再 .use(db),handler 内直接 db.query / db.insert
需要 per-request 上下文(auth、tenant、rate-limit)时再按 ORPC 的
os.middleware 模式新增,不在此预先铺陈。
|
2026-04-24 20:37:11 +08:00 |
|
imbytecat
|
d15b22ad1b
|
refactor(db): 去掉 lazy singleton,改为模块级 const db
getDB/closeDB + 可空单例是 Cloudflare Workers 场景的模式——每个请求独
立上下文、不允许模块加载期副作用。在 Bun 单进程长驻服务下这些都是冗余
的仪式,徒增心智。
改为模块级 const db:
- src/server/db/index.ts 直接 export drizzle(...) 实例
- shutdown 插件用 db.$client.end() 收尾
- db.middleware.ts 跟随内部重命名以避免同名遮蔽(本身的去留放到下一
次提交)
|
2026-04-24 20:36:16 +08:00 |
|
imbytecat
|
19e60d358f
|
feat(cli): 引入 citty CLI,迁移改为显式 ./server migrate
- 顶层新增 bin.ts 作为编译入口,citty 懒加载 src/cli/ 下子命令
- src/cli/serve.ts 通过 _serve-nitro.mjs 桥接启动 Nitro(规避
.output/server/index.mjs 顶层 serve(...) 的副作用导入)
- src/cli/migrate.ts 显式跑 drizzle migrate;env / drizzle 都在 run()
里 await import,避免 citty --help 遍历 subCommands 时触发 env 校验
- compile.ts 入口切到 bin.ts;移除 src/server/plugins/migrate.ts
与 vite.config.ts 中的启动时自动迁移
- compose.yaml 新增一次性 migrate 服务,app depends_on
service_completed_successfully,保证迁移先行再起服
- tsconfig 排除 .output / out;AGENTS.md 补充 CLI 与部署规约
|
2026-04-24 20:32:32 +08:00 |
|
imbytecat
|
75c77159b4
|
refactor(db): 适配 drizzle-orm 0.x API 并引入 drizzle-zod
drizzle-orm 从 1.0 beta 降级到 0.45 后,1.0 的 defineRelations、drizzle-orm/zod
子路径以及 RQB v2 的 orderBy 对象语法均不可用。改用 schema 作为 drizzle()
入参、从独立的 drizzle-zod 包导入 schema 生成器,并将 orderBy 改回 0.x 的
回调写法。同时删除因降级而失效的旧迁移。
|
2026-04-24 20:08:41 +08:00 |
|
imbytecat
|
1af5d4e3c0
|
fix: 修复编译二进制 Ctrl+C 无法退出的问题
|
2026-04-02 07:48:25 +08:00 |
|
imbytecat
|
6795730485
|
refactor(db): 暴露 closeDB() 函数以支持连接池清理
|
2026-04-02 07:48:16 +08:00 |
|
imbytecat
|
77b3484415
|
refactor: 改用 Nitro 插件实现启动时数据库迁移
|
2026-04-02 03:42:45 +08:00 |
|
imbytecat
|
087796038e
|
chore(routes): 重新生成路由树以反映健康检查端点删除
|
2026-04-02 00:49:33 +08:00 |
|
imbytecat
|
ca4e25827f
|
chore(api): 删除未使用的健康检查端点
|
2026-04-02 00:48:41 +08:00 |
|
imbytecat
|
c67e773086
|
refactor: 抽取 UI 组件、改进错误页面、统一导入路径并简化数据库接口
|
2026-04-02 00:13:43 +08:00 |
|
imbytecat
|
cd7b65fda4
|
refactor: flatten monorepo into standalone project
|
2026-04-01 19:43:21 +08:00 |
|
imbytecat
|
a6125718f5
|
refactor: 重构演示应用目录结构与配置文件路径
- 重命名构建配置文件至指定应用目录
- 重命名 drizzle.config.ts 文件至 apps/demo-app/ 目录下
- 添加演示应用的完整包配置,包含构建、开发、数据库管理及依赖项,支持 Tauri 桌面应用开发。
- 重命名 robots.txt 文件至 demo-app 应用目录下
- 重命名 src-tauri/.gitignore 文件为 apps/demo-app/src-tauri/.gitignore
- 重命名 AGENTS.md 文件至指定目录路径
- 重命名构建脚本文件以匹配新项目路径结构
- 重命名默认能力配置文件以匹配新项目路径
- 重命名 Cargo.lock 文件以匹配新的项目路径结构
- 重命名 Cargo.toml 文件以正确反映其在项目中的路径位置
- 重命名图标文件以正确匹配新项目路径
- 重命名128x128.png图标文件至demo-app应用目录下
- 重命名图标文件以正确匹配新项目路径
- 重命名图标文件以匹配新项目路径
- 重命名图标文件以正确匹配新项目路径
- 重命名图标文件以匹配新项目路径
- 重命名图标文件以正确反映其在项目中的路径位置
- 重命名图标文件以匹配新项目路径结构
- 重命名图标文件以正确匹配新项目路径
- 重命名图标文件以正确匹配新项目路径
- 重命名图标文件以正确匹配新项目路径
- 重命名图标文件以正确匹配新项目路径
- 重命名图标文件以匹配新项目路径结构
- 重命名图标文件以正确放置在演示应用的资源目录中
- 重命名图标文件以正确匹配新项目路径
- 重命名图标文件以正确匹配新项目路径
- 重命名命令模块文件路径以匹配项目结构
- 重命名文件以正确反映其在项目中的位置
- 重命名主程序文件路径以匹配项目结构
- 重命名 sidecar.rs 文件至 demo-app 项目路径下
- 重命名 tauri.conf.json 文件至指定目录路径
- 重命名错误组件文件以正确反映其在项目中的位置
- 重命名文件 NotFount.tsx 到指定目录路径
- 重命名数据库入口文件路径以适应项目结构调整
- 重命名数据 schema 文件路径以匹配项目结构
- 重命名文件以正确反映其在项目中的位置路径
- 重命名环境配置文件以正确反映其在项目中的位置。
- 重命名文件以正确反映其在项目中的路径位置
- 重命名文件以正确反映其在项目中的位置
- 重命名文件以正确反映其在项目中的路径位置
- 重命名文件以正确反映其在项目中的路径位置
- 重命名工具函数文件以正确反映其在项目中的位置
- 重命名客户端文件以正确反映其在项目中的位置
- 重命名文件以正确反映其在项目中的位置
- 重命名文件路径以正确组织项目结构中的契约文件
- 重命名文件路径以正确反映其在项目中的位置
- 重命名文件以正确反映其在项目中的位置
- 重命名数据库中间件文件以正确反映其在项目中的位置
- 重命名中间件文件路径以匹配项目结构
- 重命名路由文件以正确反映其在项目中的位置
- 重命名文件以正确反映其在项目中的位置。
- 重命名类型文件以正确反映其在项目中的路径位置
- 重命名路由配置文件以匹配项目目录结构
- 重命名根路由文件以正确反映其在项目中的位置
- 重命名RPC路由文件至demo-app应用目录下
- 重命名路由文件路径以匹配项目结构调整
- 重命名路由树生成文件至 demo-app 应用目录下
- 重命名样式文件以正确反映其在项目中的位置
- 添加 TypeScript 配置以扩展 React 项目模板并设置路径别名。
- 重命名 vite.config.ts 文件至 apps/demo-app/ 目录下
- 移除 biome.json 中对 routeTree.gen.ts 文件的排除规则
- 更新依赖版本以统一使用 catalog 依赖管理,提升项目依赖一致性并升级关键包至最新稳定版本。
- 配置安装时的公共提升模式,包含类型包和特定命名空间的包。
- 删除空的 drizzle 目录占位文件
- 将 node 版本更新为最新版本,同时将 bun 和 rust 版本设置为最新。
- 将项目名称更新为 monorepo 并重构脚本与依赖配置以支持工作区结构和统一的 turbo 管理。
- 添加基础 TypeScript 配置文件,启用严格模式并配置模块解析与编译选项以支持现代 JavaScript 特性。
- 添加 Bun 专用的 TypeScript 配置,继承基础配置并引入 Bun 类型定义。
- 添加 tsconfig 包的配置文件并定义基础、Bun 和 React 的配置导出,同时引入 Bun 类型定义作为开发依赖。
- 添加React项目专用的TypeScript配置,指定JSX处理方式并扩展基础配置。
- 删除旧的 TypeScript 配置文件以移除过时的编译选项和路径别名设置。
|
2026-01-21 14:31:12 +08:00 |
|
imbytecat
|
72c566b721
|
feat: 添加 Tauri 桌面应用支持并设置窗口标题
- 添加 Tauri API 依赖包以支持桌面应用功能
- 添加 Tauri 应用 API 依赖以支持本地应用功能。
- 启用本地与远程访问权限并添加窗口标题设置权限
- 在 Tauri 应用中动态设置窗口标题为“待办事项”
|
2026-01-18 16:18:17 +08:00 |
|
imbytecat
|
7f27221081
|
feat: 替换首页为完整待办事项应用并清理废弃路由
- 将首页替换为功能完整的待办事项应用,支持添加、标记完成、删除任务及进度统计,并优化了UI交互与视觉反馈。
- 删除待办事项功能页面及其相关逻辑实现
- 移除已废弃的 todos 路由相关配置及引用,保持路由树结构与实际路由文件一致。
|
2026-01-18 16:02:04 +08:00 |
|
imbytecat
|
7152ee9347
|
feat: 在Todos路由中添加数据加载器
- 在Todos路由中添加加载器,确保在页面渲染前预先获取待办事项数据。
|
2026-01-18 05:18:24 +08:00 |
|
imbytecat
|
09870c86f5
|
refactor: 移除 todos 路由预加载逻辑以优化性能
- 移除 todos 路由的预加载逻辑以优化性能和简化代码
|
2026-01-18 05:08:35 +08:00 |
|
imbytecat
|
2cadbb96f7
|
refactor: 重构待办事项合约导入与导出方式
- 更新导入方式,将 todoContract 的导入改为命名空间导入并直接引用整个模块。
- 重构待办事项合约,将各操作方法从对象结构中提取为独立导出的常量。
|
2026-01-18 05:00:13 +08:00 |
|
imbytecat
|
8a109f9fa2
|
refactor: 更新事件处理函数类型定义
- 更新事件处理函数类型以使用更精确的类型定义,提升代码可读性和类型安全性。
|
2026-01-18 04:53:41 +08:00 |
|
imbytecat
|
d3dbfd9e9b
|
refactor: 移除未使用的列表查询状态初始化代码
- 移除未使用的列表查询状态初始化代码
|
2026-01-18 04:30:03 +08:00 |
|
imbytecat
|
c7be8bd358
|
refactor: 移除操作后刷新逻辑,依赖客户端状态同步
- 为 todo 相关的创建、更新和删除操作配置默认的 onSuccess 回调,以自动失效列表查询缓存。
- 移除所有操作后的刷新查询逻辑,依赖客户端状态自动同步更新。
|
2026-01-18 04:21:57 +08:00 |
|
imbytecat
|
5c55644c57
|
refactor: 移除 TanStack Query 上下文初始化逻辑
- 删除 TanStack Query 上下文的初始化逻辑
- 移除对 context 模块的导出,仅保留对 devtools 模块的导出。
- 移除对旧查询上下文的依赖,直接创建并注入新的 QueryClient 实例到路由上下文中,并更新 SSR 集成配置以使用新实例。
|
2026-01-18 04:07:53 +08:00 |
|
imbytecat
|
effb7f16c7
|
feat: 增强路由类型安全与数据预加载
- 为路由器上下文添加类型约束以确保类型安全
- 在根路由中添加查询客户端上下文类型并使用带上下文的根路由创建函数
- 启用加载器以预先获取待办事项列表数据
|
2026-01-18 04:04:52 +08:00 |
|
imbytecat
|
7af770adef
|
feat: 添加自定义错误和404页面组件
- 添加错误组件以显示未处理的错误信息
- 将NotFound组件重命名为NotFoundComponent并更新显示文本为404 - Not Found。
- 使用自定义错误和未找到页面组件替换默认的错误和404提示。
|
2026-01-18 04:00:08 +08:00 |
|
imbytecat
|
08adadcfea
|
refactor: 重构Todo合约验证模式,分离插入与更新校验逻辑
- 重构Todo合约验证模式,分离插入和更新数据的校验Schema,并移除不必要的字段。
|
2026-01-18 03:45:13 +08:00 |
|
imbytecat
|
6092d82f34
|
refactor: 重构ORPC模块结构与路由实现
- 更新导入路径以正确引用合约文件并重构导出结构。
- 使用 os 实例替换手动实现的 ORPC 处理函数,统一通过生成的合约接口调用并集成数据库中间件。
- 使用服务器实例的路由功能替换原有的路由定义。
- 添加ORPC服务器实现,基于合约定义并指定空上下文类型。
- 修正导入路径,将 './contracts' 更新为 './contract' 以匹配实际文件路径。
|
2026-01-18 03:44:07 +08:00 |
|
imbytecat
|
ae36575256
|
refactor: 重构RPC合约与客户端类型体系
- 更新客户端类型引用,将APIClient替换为RouterClient以保持类型一致性。
- 删除旧的 RPC 合约定义文件,移除过时的类型和验证逻辑。
- 添加合约入口文件并导出待办事项合约
- 添加待办事项合约,定义列表、创建、更新和删除操作的输入输出验证规则。
- 更新 todo 处理程序以使用统一的合约导入并简化导入路径。
- 调整导出内容,仅导出客户端的orpc函数和类型模块。
- 使用合约类型替换原有路由客户端类型,并引入合约输入输出的类型推断。
|
2026-01-18 03:37:51 +08:00 |
|
imbytecat
|
1d8479c063
|
refactor: 统一客户端类型定义并增强类型一致性
- 更新客户端类型以使用定义的 APIClient 类型并确保类型一致性
- 添加类型定义以导出基于路由配置的客户端类型。
|
2026-01-18 03:26:26 +08:00 |
|
imbytecat
|
debb47a60e
|
refactor: 简化客户端创建逻辑并明确泛型类型
- 更新客户端创建逻辑,明确指定泛型类型并简化导出方式。
|
2026-01-18 03:22:23 +08:00 |
|
imbytecat
|
f0ae8196cd
|
feat: 使用 zod 合约实现类型安全的 todo 服务
- 添加 @orpc/contract 依赖以支持合约定义和类型安全。
- 添加 @orpc/contract 依赖以支持契约定义和类型安全。
- 更新客户端类型定义并移除冗余的 APIRouterClient 引入,确保客户端实例类型与路由定义一致。
- 添加基于 zod 的类型安全接口定义,包含待办事项的增删改查操作契约及对应的输入输出验证规则。
- 使用合约定义重构 Todo 处理函数,统一接口输入输出验证并移除冗余的 Zod 模式定义。
- 更新导出模块,将路由功能改为导出合约定义。
- 移除未使用的导入和类型定义,精简路由配置文件。
|
2026-01-18 03:20:05 +08:00 |
|
imbytecat
|
26c50acdf6
|
fix: 更新数据库中间件导入路径
- 更新数据库中间件导入路径以正确引用模块。
|
2026-01-18 03:06:32 +08:00 |
|
imbytecat
|
f38867c548
|
refactor: 重构数据库实例管理,支持按需创建与上下文注入
- 移除默认导出的 db 实例,改为按需创建数据库实例
- 使用数据库中间件提供上下文中的数据库实例,统一通过上下文获取数据库连接并执行操作。
- 添加数据库中间件以在请求上下文中注入数据库实例,支持服务器端全局缓存和无服务器环境下的每次新建实例。
- 导出中间件模块中的数据库相关功能。
|
2026-01-18 03:03:28 +08:00 |
|
imbytecat
|
daaa220a47
|
refactor: 统一HTTP方法处理为ANY并集中响应
- 将所有HTTP方法处理统一为ANY方法,直接在单个处理器中处理所有请求并返回响应或404错误。
|
2026-01-18 02:57:33 +08:00 |
|
imbytecat
|
89b94a9926
|
refactor: 更新客户端与路由类型命名以保持一致性
- 更新客户端类型引用,将 RouterClient 替换为 APIRouterClient 以匹配路由定义的最新命名。
- 更新类型导出名称以使用更清晰的命名并移除冗余的别名。
|
2026-01-18 02:30:23 +08:00 |
|
imbytecat
|
46c370a5a8
|
refactor: 简化客户端类型声明并增强路由客户端类型支持
- 更新客户端类型推断并简化类型声明以支持更灵活的路由客户端使用
- 导出路由器客户端类型以支持类型安全的客户端调用。
|
2026-01-18 02:25:14 +08:00 |
|
imbytecat
|
728aeac32c
|
feat: 更新路由组件名称并启用查询预获取优化性能
- 更新路由组件名称并启用查询预获取功能以优化数据加载性能。
|
2026-01-18 01:53:36 +08:00 |
|
imbytecat
|
6a2f2e1b00
|
feat: 更新待办事项操作并重置状态
- 更新待办事项创建、切换和删除操作,确保在成功后重新获取数据并重置输入状态。
|
2026-01-18 01:44:39 +08:00 |
|
imbytecat
|
f2481c31c7
|
refactor: 重构待办事项模块,统一路由与数据操作逻辑
- 将客户端导出改为私有常量,避免外部直接访问。
- 添加待办事项的完整 CRUD 操作,包括列表查询、创建、更新和删除功能,并使用 Zod 进行输入输出验证和 Drizzle ORM 操作数据库。
- 导出客户端和路由器模块的公共接口
- 添加路由配置,将 todo 处理程序注册到路由系统中。
- 删除已废弃的路由定义文件
- 删除待办事项相关路由和接口定义
- 删除未使用的 TodoSchema 模式定义以清理代码库。
- 将 Todo 路由重命名为复数形式并迁移数据获取与操作逻辑至 Orpc 客户端调用
- 将路由名称和路径从 `/todo` 更新为 `/todos`,并同步更新相关类型定义和引用。
|
2026-01-18 01:42:53 +08:00 |
|
imbytecat
|
e0369d3271
|
feat: 集成 TanStack Query 与 Router 开发工具并重构上下文管理
- 添加 TanStack Query 上下文管理,初始化并导出查询客户端实例。
- 添加 TanStack Query 开发工具面板支持,集成 React Devtools 以提供查询调试功能。
- 导出上下文和开发工具模块以支持 TanStack Query 集成
- 添加 TanStack Router 开发工具面板支持,集成 React Devtools 以提供路由调试功能。
- 导出 tanstack-router 开发工具模块的全部功能。
- 重构路由配置以使用统一的查询上下文,移除重复的查询客户端实例化并确保服务端渲染集成正确引用上下文中的查询客户端。
- 移除旧版 devtools 组件导入并替换为通过集成模块导入的现代化 devtools 插件。
|
2026-01-18 01:13:22 +08:00 |
|
imbytecat
|
ace80a2f95
|
feat: 添加RPC API路由支持与Zod验证错误响应
- 添加RPC API路由处理,支持多种HTTP方法并集成Zod验证错误的自定义错误响应。
- 添加对 `/api/rpc/$` 路由路径的支持,包括路由配置、类型定义和路由树的更新。
|
2026-01-18 00:47:45 +08:00 |
|
imbytecat
|
7750b11fc7
|
feat: 升级依赖并集成 ORPC 与 TanStack Query
- 升级 `@orpc` 相关依赖至 1.13.4 版本并更新 `@tanstack/react-router` 等核心库至 1.151.0 版本,同时引入新依赖 `@standard-schema/spec`、`cookie`、`openapi-types`、`radash` 和 `type-fest`。
- 升级 TanStack React Router 及相关依赖至 1.151.0 版本,并添加 Orpc 相关客户端、服务器和 React Query 集成依赖。
- 创建支持服务端和客户端的 ORPC 客户端实例,并集成 TanStack Query 工具以实现数据查询功能。
- 添加路由模块以导出待办事项相关的操作函数。
- 添加待办事项列表和添加待办事项的路由接口,支持输入验证和数据操作。
- 添加待办事项数据校验模式,定义包含唯一ID和名称字段的结构化数据模型。
|
2026-01-18 00:37:24 +08:00 |
|
imbytecat
|
cc5f2758fd
|
fix: 删除冗余日志并更新页面标题
- 删除了多余的控制台输出语句
- 更新页面标题为“Fullstack Starter”
|
2026-01-17 14:58:55 +08:00 |
|
imbytecat
|
f9e3af2291
|
refactor: 移除未使用注释并优化代码结构
- 移除未使用的服务器函数注释并优化代码结构
|
2026-01-17 03:23:40 +08:00 |
|
imbytecat
|
8b058fd40a
|
feat: 优化待办事项页面视觉与交互体验
- 优化待办事项页面的视觉样式与交互体验,重构头部信息展示、输入框与按钮布局、进度条样式,并改进任务项的视觉反馈与操作交互,提升整体设计一致性与用户操作流畅性。
|
2026-01-17 03:18:56 +08:00 |
|