Commit Graph

21 Commits

Author SHA1 Message Date
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
Blizzard 4ce91a6c48 docs: 生产 .env 模板管理员用户名改为 sundynix
build-and-deploy / deploy (push) Has been cancelled
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 13:50:33 +08:00
Blizzard 41f3fb7fb0 ci: 触发分支改为 main(提交或合并入 main 才部署)
- deploy.yml 触发条件 dev → main;PR 合并进 main 产生的 push 同样覆盖
- 文档同步:日常开发走 dev,合并 main 才上线

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 13:43:46 +08:00
Blizzard a6257d2fc4 ci: Docker 打包 + Gitea Actions 自动部署到 132
- Dockerfile 四阶段:web/admin 前端构建 → go 静态编译(embed 双前端) → alpine 运行镜像(53MB, 非 root, Asia/Shanghai)
- docker-compose.yml:132 部署用,暴露 8090,env_file 读本机 .env,带 healthcheck
- .gitea/workflows/deploy.yml:push dev → runner 构建 → docker save|gzip → sshpass scp → 132 load+up → 健康检查
- deploy/nginx-site.sundynix.cn.conf:公网 nginx 反代(穿透回源 site.sundynix.cn)
- .env.production.example + deploy/README.md:部署手册(secrets、127:3307 数据库、证书)
- 已本地验证:镜像构建通过 + 容器冒烟(健康/用户端/管理端/logo/RSS/登录)全绿

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 13:38:19 +08:00
Blizzard 85a0b44ddd feat: releases 版本接口 + 全站仓库链接修正
- 后端 /api/releases/latest 代理 gitea Releases(10min 缓存,无发布/不可达时回退 SUNDYNIX_FALLBACK_VERSION)
- 前端 use-release hook 就绪(下载区动态接线暂缓)
- 仓库链接统一指向 git.sundynix.cn/sundynix/sundynix-agentix,下载按钮 # 占位改为 releases 页

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 13:27:29 +08:00
Blizzard 197f40448e feat: 换用官方 logo 原图
- S 标从 2048 原图裁切:导航/页脚/admin 用 512 webp(96KB),favicon 32/64 圆角 png,apple-touch-icon 180
- OG 分享图用完整版 logo-full.jpg(含字标),index.html 补 og:title/description/image
- 自绘 SVG logo 退役;原图 8.4MB 移入 design-assets/(已 gitignore,不进构建产物)
- web/dist 总体积 1.0MB

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 11:51:33 +08:00
Blizzard 7e21036faf feat: 品牌改版 v2 — 跟随霓虹数据流 logo
- logo 矢量化:青→蓝→紫渐变 S 数据流(logo.tsx + favicon.svg,web/admin 共用)
- 全站配色跟随 logo:强调色青瓷绿 → 青蓝(浅 #0284C7 / 暗 #38BDF8),中性色转冷蓝,终端窗深岩蓝底
- 紫色克制使用:仅 logo 与 .text-brand-gradient(Hero 标题"AI Agent 工作台"渐变字)
- 导航/页脚/admin 顶栏/登录页挂载 logo 标记
- 终端窗与代码块的提示符、光标、事件标签同步换色

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 11:44:20 +08:00
Blizzard 4423a770e2 feat(web): 用户端设计完善 + ICP 备案号
- 页脚升级双层结构:品牌区 + 产品/资源链接列 + 底栏(© + 滇ICP备2025056308号-1,链接工信部备案系统)
- 滚动进场动效:Reveal 组件(IntersectionObserver),首页各区块错峰淡入,尊重 prefers-reduced-motion
- Hero 终端窗事件流逐行浮现动画
- 功能卡片 hover 时 mono 标签点亮强调色
- 全站动态页面标题(博客详情随文章名变化)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 11:20:52 +08:00
Blizzard 0250355dcd feat: RSS 订阅源 + 仓库 README
- GET /rss.xml 输出 RSS 2.0(已发布文章,SUNDYNIX_SITE_URL 可配)
- vite 代理补 /rss.xml,页脚 RSS 链接生效
- README:结构、开发流程、环境变量、后端规范、API 速览

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 11:06:21 +08:00
Blizzard 5abc705eae feat: 官网 + 管理端 + Gin/GORM 后端首个完整版本
- web/: 产品官网(Hero 事件流终端、功能矩阵、架构、快速开始、下载、博客 + Markdown 详情页),青瓷绿双主题
- admin/: 内容管理(JWT 登录、文章分页/搜索/CRUD、草稿与发布),embed 挂 /admin
- server/: Gin + GORM,MySQL(DSN 走 .env,SQLite 兜底);规范落地:sundynix_ 表前缀、字符串雪花主键、snake_case 列名、统一响应信封、公共分页参数
- 双 SPA embed 单二进制部署,make build 一键出包

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 11:03:31 +08:00
Blizzard d46267dde1 init: initial commit 2026-07-17 09:47:53 +08:00