# class0328 **Repository Path**: yu-caihou/class0328 ## Basic Information - **Project Name**: class0328 - **Description**: 基于Node开发的班级萌宠管理系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-14 - **Last Updated**: 2026-04-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 班级萌宠管理系统 面向中小学课堂的游戏化班级管理工具。教师通过日常奖惩给学生加减积分,积分驱动学生的 Q 版虚拟萌宠升级、进化、换装、解锁成就。 ## 技术栈 | 层 | 方案 | |---|---| | 前端 | React 18 + Vite + TypeScript + TailwindCSS + shadcn/ui | | 后端 | NestJS + Prisma + PostgreSQL | | 缓存 | Redis | | 2D 萌宠渲染 | Canvas 分层渲染 + CSS 动画 | | 实时通信 | Socket.IO | | 部署 | Docker Compose | ## 项目结构 ``` ├── apps/ │ ├── api/ # NestJS 后端 │ │ ├── prisma/ # Prisma Schema & 迁移 │ │ └── src/ # 后端源码 │ └── web/ # React 前端(教师端 + 学生端) │ └── src/ ├── packages/ │ └── shared/ # 共享类型定义和常量 ├── docker-compose.yml └── pnpm-workspace.yaml ``` ## 本地开发启动 ### 前置要求 - Node.js >= 20 - pnpm >= 9 - Docker & Docker Compose ### 1. 安装依赖 ```bash pnpm install ``` ### 2. 启动数据库服务 ```bash docker compose up -d ``` 这会启动: - PostgreSQL (端口 5432) - Redis (端口 6379) ### 3. 初始化数据库 ```bash cd apps/api cp .env.example .env # 首次需要复制环境变量 npx prisma generate # 生成 Prisma Client npx prisma db push # 同步数据库结构 ``` ### 4. 启动后端 ```bash pnpm dev:api ``` API 运行在 http://localhost:3001 ### 5. 启动前端 ```bash pnpm dev:web ``` 前端运行在 http://localhost:5173 ### 环境变量说明 `apps/api/.env`: | 变量 | 说明 | 默认值 | |---|---|---| | DATABASE_URL | PostgreSQL 连接串 | postgresql://petclass:petclass123@localhost:5432/petclass | | REDIS_URL | Redis 连接串 | redis://localhost:6379 | | JWT_SECRET | JWT 密钥 | (请修改为强随机字符串) | | CORS_ORIGIN | 前端地址 | http://localhost:5173 | | PORT | API 端口 | 3001 |