# pfans **Repository Path**: pcxtu/pfans ## Basic Information - **Project Name**: pfans - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-18 - **Last Updated**: 2026-01-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Pfans - 无畏契约粉丝社区 Pfans 是一个专为无畏契约(Valorant)玩家打造的粉丝社区平台。在这里,你可以分享精彩的游戏录像、截图,参与比赛复盘讨论,以及收集和分享游戏中的“精彩语录”。 ## 🌟 功能特性 - **视频与图片分享** - 支持上传游戏录像和精彩截图。 - 视频采用 Supabase 对象存储,支持在线播放。 - 视频标签分类(排位赛、普通模式、死斗模式等)。 - 视频时间轴展示 (`/videos`)。 - **精彩语录 (P言P语)** - 收录游戏中的经典语录和黑话。 - 支持用户贡献新词。 - 视频上传时可关联相关语录标签。 - **比赛复盘** - 专业的比赛复盘工具 (`/match-review`)。 - 战术板与即时讨论。 - **用户系统** - 完整的注册/登录流程。 - 个人主页展示 (`/profile`)。 - 视频点赞、评论互动。 - **管理后台** - 管理员数据看板 (`/admin`)。 - 内容管理与审核。 - **移动端适配** - 响应式设计,支持手机端访问。 ## 🛠 技术栈 - **前端框架**: [React](https://react.dev/) + [Vite](https://vitejs.dev/) - **UI 库**: [Tailwind CSS](https://tailwindcss.com/) + [Lucide React](https://lucide.dev/) (图标) - **后端/BaaS**: [Supabase](https://supabase.com/) - **Auth**: 用户认证 - **Database**: PostgreSQL 数据库 - **Storage**: 视频与图片对象存储 - **进程管理**: [PM2](https://pm2.keymetrics.io/) (生产环境后台运行) ## 🚀 快速开始 ### 1. 克隆项目 ```bash git clone https://gitee.com/pcxtu/pfans.git cd pfans ``` ### 2. 安装依赖 ```bash npm install ``` ### 3. 配置环境变量 在项目根目录创建 `.env` 文件,填入你的 Supabase 配置: ```env VITE_SUPABASE_URL=你的_SUPABASE_URL VITE_SUPABASE_ANON_KEY=你的_SUPABASE_ANON_KEY ``` ### 4. 启动开发服务器 同时启动前端和后端服务(开发模式): ```bash npm run dev ``` - 前端地址: `http://localhost:5173` - 后端API: `http://localhost:3001` ## 📦 生产环境部署 ### 构建项目 ```bash npm run build ``` ### 后台运行 (使用 PM2) 项目包含自动化脚本,可使用 PM2 在后台运行服务: ```bash # 赋予脚本执行权限 chmod +x start.sh stop.sh # 启动服务 ./start.sh # 停止服务 ./stop.sh ``` ### 查看服务状态 ```bash pm2 list # 查看进程列表 pm2 logs # 查看运行日志 ``` ## 📂 目录结构 ``` pfans/ ├── api/ # 后端 API 服务 (Express) ├── src/ │ ├── components/ # 公共组件 │ ├── context/ # React Context (如 AuthContext) │ ├── lib/ # 工具库 (Supabase 客户端等) │ ├── pages/ # 页面组件 │ ├── types/ # TypeScript 类型定义 │ └── App.tsx # 路由配置 ├── public/ # 静态资源 ├── supabase/ # Supabase 迁移文件 ├── ecosystem.config.cjs # PM2 配置文件 └── ... ``` ## 🤝 贡献 欢迎提交 Issue 和 Pull Request 来改进这个项目! ## 📄 许可证 [MIT License](LICENSE)