Merge pull request 'feat: 官网 + 管理端 + Gin/GORM 后端首个完整版本' (#1) from main into dev #2

Merged
Blizzard merged 15 commits from dev into main 2026-07-17 09:36:17 +00:00

15 Commits

Author SHA1 Message Date
Blizzard b19c42989d feat(admin): 复刻登录页 — boot 过渡动画 + 角色表单
- 搬入 framer-motion,复刻参考项目登录体验
- AICoreEffect:点芯片启动神经链接进度,S-core 数据流点亮,100% 解锁
- AIBanner:青色数据流 + 紫色神经网络背景
- LoginCharacters:四只卡通角色,眼睛跟随鼠标,输密码时遮眼/偷看
- 表单去掉验证码,接现有 login api;账号密码 + 密码显示切换
- 品牌名换 sundynix admin,登录按钮用青蓝渐变

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 20c6e0d7c2 refactor(admin): 返回主页移到底部主题与退出之间
- 从导航区移到底部按钮组,夹在主题切换与退出登录中间
- 仍为整页跳转回用户端官网首页

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard efb805fd2d feat(admin): 侧边栏加「返回主页」
- 整页跳转回用户端官网首页(生产同源,a href="/")

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 5adb3d621b feat: 用户端访问足迹统计(IP 去重 UV/PV)
- 后端 Visit 模型(date+ip 唯一索引):POST /api/track 埋点(ClientIP upsert,pv+1),GET /api/admin/visits 每日 UV/PV 统计
- web 每会话上报一次访问(sessionStorage 防重),IP 由后端去重
- admin 访问统计页:侧边栏入口 + 今日/近N天 UV·PV 卡片 + 每日柱状趋势(自绘无依赖) + 7/30/90 天切换

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard cc4aa647c5 fix(admin): 登录接口 401 不再误报为「登录已过期」
- client 原将所有 401 当会话过期处理,覆盖了登录接口的凭据错误消息
- 排除 /admin/login,登录失败改为显示后端真实提示(用户名或密码错误)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 879c32c7ee feat(admin): 登录页重设计 — 深色沉浸分栏
- 参考 sundynix-micro-admin 的分栏沉浸布局,提取精华适配青蓝品牌
- 左品牌区 + 右表单玻璃卡片,深色沉浸背景
- canvas 青蓝粒子网络(呼应 logo 节点网络),品牌光晕,零重依赖
- 密码显示切换、青蓝渐变登录按钮、登录中 loading 态

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 66cd194572 feat(admin): 交互打磨 — toast 提示 + 删除确认对话框
- 全局 toast:保存/删除成功失败即时反馈,替代静默保存
- 删除确认对话框替换 window.confirm,危险操作红色按钮
- 编辑保存成功 toast + 跳转列表

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard eee51ddf0a feat(admin): Markdown 编辑器分栏实时预览 + 工具栏
- 左写右预览,react-markdown + remark-gfm(表格/GFM 生效)
- 工具栏一键插入标题/加粗/斜体/代码/链接/列表/引用(按光标选区)
- 预览接 prose-site 排版,编辑页返回链接指向 /posts

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 6334dccf4a feat(admin): 侧边栏布局 + 仪表盘 + 全局隐藏滚动条
- 全局隐藏滚动条(web + admin),保留正常滚动
- admin 顶栏改侧边栏导航(仪表盘/文章),响应式移动端抽屉
- 路由重构:首页→仪表盘,文章列表移到 /posts
- 仪表盘页:文章总数/已发布/草稿统计卡片 + 最近更新列表
- 后端 GET /api/admin/stats

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 7f050843f9 docs: 修正生产库密码为 root(MySQL root 密码 != 机器 SSH 密码)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 2dfe124b86 ci: checkout 改用内网 gitea git clone,去除 github 依赖
- actions/checkout@v4 从 github.com 拉取,内网 TLS 握手超时
- 改为直接 git clone 内网 gitea(192.168.100.125:3000),用 github.token 认证
- 至此 workflow 无任何 github action 依赖,全程走内网

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 644f9e6957 ci: Dockerfile 换国内源加速构建
- npm 用 npmmirror(淘宝源),go 用 goproxy.cn
- 大幅缩短 132 上 npm ci / go mod download 耗时

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard 86df16804a ci: 触发部署 2026-07-17 17:35:05 +08:00
Blizzard bdc8e6d82a ci: 改为部署机构建方案,适配 docker 模式 runner
- runner 不再 host 模式跑 docker build(原 host runner 缺 node/docker 无法执行)
- 新流程:runner 打包源码 → scp 到 132 → 132 上 docker build + compose up
- runner 只需 catthehacker 镜像(node/git/sshpass),docker 能力下沉到 132
- deploy/README 补 runner docker 模式部署命令(挂 sock + 持久化 /data)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:35:05 +08:00
Blizzard f5a159bd94 Merge pull request 'feat: 官网 + 管理端 + Gin/GORM 后端首个完整版本' (#1) from main into dev
Reviewed-on: Blizzard/sundynix-site#1
2026-07-17 06:07:33 +00:00