AI-assisted Development · Completed

AgileX Developer Center

为机器人开发者官网搭建的内容管理系统,在保留原有界面的同时,将科研项目与开源仓库升级为由后台维护、经 API 发布的动态内容。

AgileX Developer Center 项目界面
角色
全栈开发 / 内容系统设计
周期
独立项目
年份
2026
状态
Completed

面向对象与背景

项目面向机器人企业官网的内容运营人员、研发团队与访问开发者。管理员需要持续维护科研项目和开源仓库,但原网站内容写在前端脚本中,每次更新都依赖修改代码和重新发布。

需要解决的问题

在不改变现有官网视觉界面的前提下,需要将静态内容升级为可管理的数据:公开访客只能读取已发布内容,管理员登录后才能增删改查,同时保证账号密码、数据库凭据和登录状态的安全。

项目目标

  • 保留既有官网界面,通过 API 动态展示已发布的科研项目与开源仓库。
  • 提供独立的 /admin/ 管理后台,让非开发人员可以维护和发布内容。
  • 建立公开读取与后台管理两套权限边界,并安全保存管理员账号。

设计约束

  • 原有网站界面和访问路径需要保持稳定,升级不能破坏前台体验。
  • 数据库密码、JWT 密钥等敏感配置只能保存在服务端环境变量中。
  • 旧 script.js 中的内容需要一次性迁移,避免重复导入。

搭建的逻辑框架

  • 以 Node.js 与 Express 作为统一后端,同时提供官网静态文件、管理后台静态文件和 REST API。
  • Supabase PostgreSQL 使用 projects、open_source_repositories 和 users 三类数据表,分别保存官网内容与管理员账户。
  • 前台通过 /api/public/* 仅读取已发布内容;后台通过 /api/admin/* 在登录后完成新增、编辑、发布和删除。
  • 管理员密码仅保存 bcrypt 哈希,JWT 管理登录状态;生产环境启用 HTTPS-only Cookie。
  • 通过 db:init 初始化数据表,content:migrate 迁移旧内容,admin:create 创建首个管理员。

使用价值

  • 将写死在前端代码中的项目内容转化为可持续维护的内容管理流程。
  • 运营人员无需修改源代码,即可在后台完成项目和开源仓库的发布管理。
  • 公开接口、管理接口和数据库凭据相互隔离,降低误发布与敏感信息泄露风险。
  • 系统可作为企业技术官网、实验室项目主页或开源社区门户的基础内容平台。

项目总结

  • 在既有网站上增加后台能力时,保持前台契约稳定比重写界面更有业务价值。
  • 内容迁移、权限隔离和生产环境配置必须与页面功能一起设计,而不是部署前再补充。
← 返回项目列表