返回首页
古今幻境

古今幻境

开发中赛道二:Agent 的第三空间知乎特别奖

沉浸式历史体验平台,基于 Next.js 15 和 SecondMe API 构建的中国古风社交应用。

放弃热闹

古今幻境

沉浸式历史体验平台,基于 Next.js 15 和 SecondMe API 构建的中国古风社交应用。

特性

  • 历史场景体验:穿越唐朝、明朝等朝代,体验古风互动
  • AI 对话:与历史名人(李白、杜甫等)实时对话
  • 角色匹配:Tinder 风格的历史人物匹配
  • 飞花令游戏:诗词接龙 AI 对战
  • 县衙断案:推理游戏
  • 大明朝廷:朝廷决策模拟
  • 笔记功能:记录诗词创作

技术栈

  • 前端:Next.js 15 (App Router), React 19, TypeScript
  • 数据库:Prisma + SQLite
  • 认证:SecondMe OAuth2
  • AI:SecondMe Chat API (流式响应)
  • 样式:CSS 古风主题

快速开始

前置要求

  • Node.js 18+
  • npm 或 yarn

安装

# 安装依赖
npm install

# 推送数据库 Schema
npx prisma db push

配置

创建 .env.local 文件:

# SecondMe OAuth2 配置
SECONDME_CLIENT_ID=your_client_id
SECONDME_CLIENT_SECRET=your_client_secret
SECONDME_REDIRECT_URI=http://localhost:3000/api/auth/callback

# 数据库
DATABASE_URL="file:./dev.db"

# SecondMe API
SECONDME_API_BASE_URL=https://api.mindverse.com/gate/lab
SECONDME_OAUTH_URL=https://go.second.me/oauth/
SECONDME_TOKEN_ENDPOINT=https://api.mindverse.com/gate/lab/api/oauth/token/code
SECONDME_REFRESH_ENDPOINT=https://api.mindverse.com/gate/lab/api/oauth/token/refresh

运行

# 开发模式
npm run dev

# 生产构建
npm run build
npm run start

访问 http://localhost:3000

项目结构

src/
├── app/                    # Next.js App Router
│   ├── api/               # API 路由
│   │   ├── auth/          # OAuth 认证
│   │   ├── chat/          # AI 聊天
│   │   ├── user/          # 用户信息
│   │   ├── progress/      # 游戏进度
│   │   └── ...
│   ├── scenes/            # 历史场景
│   │   ├── tang/          # 大唐诗会
│   │   ├── ming/          # 大明朝廷
│   │   └── yamen/         # 县衙断案
│   ├── match/             # 角色匹配
│   ├── notes/             # 笔记管理
│   └── page.tsx           # 首页
├── lib/                   # 工具函数
│   ├── auth.ts            # 认证工具
│   ├── secondme.ts        # SecondMe API
│   └── prisma.ts          # 数据库客户端
└── prisma/
    └── schema.prisma      # 数据库模型

功能说明

首页

  • SecondMe OAuth 登录
  • AI 实时对话(流式响应)
  • 功能导航入口

历史场景

场景功能
大唐诗会飞花令游戏、与杜甫论诗
大明朝廷朝廷决策模拟、国力管理
县衙断案证据推理、断案游戏

角色匹配

  • 历史人物卡片展示
  • 左滑跳过、右滑喜欢
  • 匹配成功后可聊天

笔记

  • 创建、查看笔记
  • 支持标题、内容、标签

API

项目使用 SecondMe API,需要在 SecondMe Developer Console 申请应用并开通以下权限:

  • user.info - 用户基础信息
  • user.info.shades - 兴趣标签
  • user.info.softmemory - 软记忆
  • chat - 聊天功能
  • note.add - 添加笔记
  • voice - 语音功能

许可证

MIT License

评论

加载中...
登录 projects.loginToComment