Skip to content

HHHCODE/yino-admin

Repository files navigation

Yino CMS

一个基于 Next.js App Router + TypeScript + Tailwind CSS + Prisma + PostgreSQL + Auth.js v5 + TipTap 构建的内容发布后台管理系统。

当前已经完成:

  • 管理员邮箱/密码注册与登录
  • 后台 Layout、侧边栏与顶部导航
  • 文章管理列表、筛选、分页、新增、编辑
  • 常见问题维护
  • 系统设置保存与回显
  • PostgreSQL 本地启动和种子数据初始化

技术栈

  • Next.js 16 App Router
  • TypeScript strict
  • Tailwind CSS
  • Prisma 7
  • PostgreSQL 17
  • Auth.js v5 Credentials
  • react-hook-form + zod
  • TipTap 富文本编辑器
  • Sonner Toast

本地运行

  1. 安装依赖
npm install
  1. 启动 PostgreSQL

如果本机尚未启动:

brew services start postgresql@17
  1. 同步数据库结构
npx prisma db push
  1. 写入种子数据
npm run prisma:seed
  1. 启动开发服务
npm run dev

启动后访问 http://localhost:3000

默认管理员账号

  • 邮箱:admin@yino.local
  • 密码:Admin@123456

环境变量

项目使用的核心环境变量如下:

DATABASE_URL="postgresql://postgres:postgres@localhost:5432/yino_admin?schema=public"
AUTH_SECRET="replace-with-a-long-random-secret"
AUTH_TRUST_HOST="true"
NEXT_PUBLIC_APP_NAME="Yino CMS"

常用命令

npm run dev
npm run lint
npx tsc --noEmit
npx next build --webpack
npm run prisma:generate
npm run prisma:studio
npm run prisma:seed

当前路由

  • /login 登录
  • /register 注册
  • /dashboard 仪表盘
  • /articles 文章管理
  • /faqs 常见问题
  • /articles/new 新增文章
  • /articles/[id]/edit 编辑文章
  • /settings 系统设置

说明

  • 当前项目使用 PostgreSQL 作为数据库。
  • Prisma schema 已与本地数据库同步。
  • 已提供可重复执行的种子脚本,适合本地联调和演示。
  • 如果后续你要切换到云数据库,只需要更新 DATABASE_URL 并重新执行 npx prisma db push

后续可扩展方向

  • 上传图片到对象存储
  • 文章删除/批量操作
  • 草稿自动保存
  • 审核流与角色权限
  • SEO 字段扩展

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors