Commit Graph

15 Commits

Author SHA1 Message Date
cc
e4383cf4b5 docs: 记录 git 两个远程与推送方式(gitea 直推、GitHub 需手动 Token)
补充行尾 CRLF/LF 提醒,避免行尾噪声混入功能提交。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-21 21:28:41 +08:00
cc
0b3b85c528 feat(start): 快捷入口改为底部分类抽屉
- 移除搜索框下方的快捷入口宫格(QuickLinks)
- 新增 CategoryDock:底部玻璃分类胶囊(社交/娱乐/开发/游戏),
  悬停时菜单以 transform-origin:bottom 从胶囊向上抽出,链接错位浮现;
  含悬停桥、点击/焦点开合、reduced-motion 降级
- StartPage 加透明占位,保持问候/搜索框删除前的垂直位置与比例
- 文档:startpage-quicklinks → startpage-category-dock 并重写;
  修正 weather 部署文档过期的 /mnt/f 路径

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-21 21:23:12 +08:00
cc
a3075133d1 feat(monitor): 顶部栏增加磁盘占用,格式与内存一致
采集根分区(/)容量,按 DISK x% · x/x GB · Free x GB 拼入展示文本,
Stats 新增 disk_used_pct / disk_total_bytes / disk_available_bytes 字段。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-21 15:31:27 +08:00
cc
f576b03315 feat(start): 填充起始页快捷入口并补文档
搜索框下方快捷入口由占位空槽改为 8 个实链接:
第一行 DeepSeek/GitHub/Bilibili/知乎/FMHY,
第二行 Rust/C++/C# 文档(col-start-2 居中)。
品牌图标内联 simple-icons 单 path,FMHY 用字标。
新增 docs/startpage-quicklinks.md 记录搜索框 + 入口及增删方法。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 21:10:38 +08:00
cc
d7d520058c docs: 补登录/入口门走 MySQL 的说明,修起始页过期引用
- 新增 docs/auth-login-gate.md:入口门 + 登录的 MySQL 后端、表结构、
  建库步骤、DATABASE_URL、无库兜底、安全待办
- startpage 文档:层级图删掉已移除的「齿轮」;weather.env 示例补 DATABASE_URL

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 20:49:04 +08:00
cc
4c8c4360ad feat(weather): 起始页天气/定位细节完善
- 新增 Client/src/lib/amap.ts:高德 JS 定位封装
- weather.ts / useWeather.ts:带经纬度/城市请求,定位失败不兜底
- Server weather.rs:相应调整
- 文档同步;.gitignore 忽略本地 .codegraph 索引

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 20:45:39 +08:00
cc
b2a0b563c9 feat(client): 隐藏登录入口改为后端校验 URL hash
去掉起始页右下角设置齿轮(SettingsGear),登录页不再有任何 UI 入口;
改为监听地址栏 `#<hash>`,经 checkGate() 交后端 /api/web/gate 校验,
命中合法开发者才放行到登录页。合法 hash 只存在后端、前端不写死。

- 新增 api/gate.ts;App.tsx 用 hashchange 监听 + 防竞态校验
- 返回起始页时抹掉地址栏 hash,避免密钥留在历史里
- Server/.gitignore 忽略 dev_gate.txt(秘密,单独部署)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 20:45:30 +08:00
cc
58bed0ae44 feat(server): 登录与开发者入口门改走 MySQL
UserStore/DevGate 不再写死,改为从 MySQL 实时查询(每次校验一条索引查询、
不缓存整表,照顾内存):
- 新增 db_pool_from_env(),UserStore 与 DevGate 共用一个 sqlx 懒连接池
- verify() 查 ccuser 表、allows() 查 dev_gate 表,均改为 async
- 未设置 DATABASE_URL 时各自回退到内置/文件兜底,便于本地无库开发

连接串经环境变量 DATABASE_URL 注入(线上写在 weather.env)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 20:43:23 +08:00
cc
f4342e7c82 docs: 天气定位失败时不兜底、不显示
线上不设 WEATHER_DEFAULT_LOCATION:高德定位失败即返回 failed,
不再回退默认城市、也不调和风,前端静默不显示。更新文档说明。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 20:35:54 +08:00
cc
a185e56c22 feat: 导航起始页 + 天气/定位 + 天气动态效果
起始页(StartPage)
- 极简玻璃风导航页作未登录首页:时段问候、Bing 默认可切换搜索、10 个快捷位、右下齿轮进登录
- 昼夜背景自动切换(light/dark),按天气图标码 + 本地时间判断
- 天气动态效果(WeatherFx canvas):雨/雪/雷,克制风格,尊重 reduced-motion

天气与定位(前后端)
- 后端 /api/web/weather:高德 IP 定位(城市+坐标) + 和风实时天气
- 和风用 JWT(EdDSA/Ed25519)认证,密钥走环境变量、仅后端持有
- 每日限流(高德 300、和风 900,北京 0 点归零) + 10 分钟按 IP 缓存
- 前端 useWeather + WeatherIcon(7 类极简 SVG)

导航与登录
- 浏览器返回键支持(History API);返回即登出
- 记住我:勾选存 localStorage、不勾存 sessionStorage,默认不勾

其他
- .gitignore 忽略 *.pem/*.env 等密钥
- 新增文档 docs/startpage-weather-location.md 及部署 spec/plan

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 20:13:18 +08:00
cc
06bbf65d71 feat: read PORT from env var, default 8080 2026-06-18 17:08:03 +08:00
Ryan
c61b8de776 重构登录后博客页:Lunada 渐变背景 + 两侧图片液态玻璃;登录报错改英文
- 登录页凭据/网络/HTTP 错误提示改为英文
- 博客页改为:通栏顶部彩虹栏 + 通栏 Hero(彩虹光标动效)+ 图片·内容·图片三栏
- 两侧图片用 import.meta.glob 自动索引 src/assets/sides/,按高度自适应、居中,叠加液态玻璃覆层
- 背景改为 Lunada 渐变极光
- 性能优化:极光改静止、中间纸/顶栏去掉 backdrop-filter,降低多层毛玻璃每帧重算开销

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 10:57:00 +08:00
CC
6037a8186c
Merge pull request #1 from KarCharon/main
feat: add login/auth system + blog page with rainbow design
2026-06-18 00:02:20 +08:00
cc
58284f3fe0 feat: add login/auth system + blog page with rainbow design
- Client: auth API wrapper (api/auth.ts) + useAuth hook with localStorage persistence

- Client: LoginPage/LoginForm with remember-me and loading states

- Client: BlogPage with hero section, rainbow spotlight cursor effect, post list

- Client: CSS rainbow gradient utilities for text/borders/backgrounds

- Server: POST /api/web/login with username/password verification + token

- Server: CORS extended to POST + Content-Type header

- Server: auth.rs token issuer, serde dependency for JSON

- Chore: gitignore Server/.vite

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-18 00:00:38 +08:00
cc
2205408252 Initial commit: React client + Rust server full-stack project
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-17 20:49:17 +08:00