# knowledge-share-platform **Repository Path**: haobinjun/knowledge-share-platform ## Basic Information - **Project Name**: knowledge-share-platform - **Description**: 内容共享平台 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-13 - **Last Updated**: 2026-05-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 知识分享平台 一个基于 Next.js 15 构建的全栈知识分享与内容付费平台,专注于政治、经济、军事、科技四大领域的专业知识传播。 ## 项目简介 本平台是一个完整的知识付费解决方案,支持内容创作、分发、会员订阅、付费阅读等功能。采用现代化的技术栈,提供优秀的用户体验和开发体验。 ## 核心功能 - **用户认证系统** - 基于 NextAuth 5 的安全认证 - **内容管理** - 支持文章、视频、音频、报告多种内容类型 - **会员订阅** - 免费、付费、高级会员三级体系 - **知识图谱** - 可视化展示知识关联关系 - **智能搜索** - 支持关键词、分类、标签多维度搜索 - **AI 助手** - 多角色 Agent 协作系统,辅助内容创作 - **用户仪表板** - 个人中心、收藏、笔记管理 ## 技术栈 ### 前端 - **Next.js 15** - React 全栈框架 - **React 19** - UI 库 - **TypeScript** - 类型安全 - **Tailwind CSS 4** - 样式方案 - **Shadcn/ui** - 高质量 UI 组件库 - **MDX** - Markdown 扩展支持 ### 后端 - **PostgreSQL** - 关系型数据库 - **Drizzle ORM** - TypeScript ORM - **NextAuth 5** - 认证框架 - **Redis** - 缓存服务(可选) - **Anthropic/OpenAI** - AI 集成 ### 部署 - **Vercel** - 云平台部署 - **Docker** - 容器化部署 ## 快速开始 ### 环境要求 - Node.js 18.17+ - npm / yarn / pnpm ### 安装依赖 ```bash npm install # 或 yarn install # 或 pnpm install ``` ### 配置环境变量 复制 `.env.example` 为 `.env.local` 并填写配置: ```env NEXT_PUBLIC_APP_URL=http://localhost:3000 DATABASE_URL=postgresql://postgres:postgres@localhost:5432/knowledge_share NEXTAUTH_SECRET=your-secret-key ``` ### 启动开发服务器 ```bash npm run dev ``` 打开浏览器访问 [http://localhost:3000](http://localhost:3000) ## 项目结构 ``` ├── app/ # Next.js App Router │ ├── (dashboard)/ # 仪表板布局组 │ ├── auth/ # 认证页面 │ ├── dashboard/ # 用户仪表板 │ ├── agent/ # AI 助手 │ ├── content/ # 内容详情 │ ├── search/ # 搜索 │ └── knowledge-map/ # 知识图谱 ├── components/ # React 组件 │ ├── ui/ # 基础 UI 组件 │ ├── content/ # 内容组件 │ ├── search/ # 搜索组件 │ └── admin/ # 管理组件 ├── lib/ # 工具库 │ ├── db/ # 数据库 (Drizzle ORM) │ ├── auth/ # 认证 (NextAuth) │ ├── hooks/ # 自定义 Hooks │ └── agent/ # AI Agent 系统 ├── types/ # TypeScript 类型 └── public/ # 静态资源 ``` ## 数据库 项目使用 PostgreSQL + Drizzle ORM,主要表结构: - `profiles` - 用户信息 - `contents` - 内容主表 - `categories` - 内容分类 - `tags` - 标签 - `subscriptions` - 订阅记录 - `transactions` - 交易记录 - `notes` - 用户笔记 详细的数据库架构请查看 [`lib/db/schema.sql`](lib/db/schema.sql) ## 构建部署 ### 生产构建 ```bash npm run build npm start ``` ### Docker 部署 ```bash docker-compose up -d ``` ### Vercel 部署 连接 GitHub 仓库到 Vercel 即可自动部署。 ## 会员体系 | 等级 | 价格 | 权限 | |------|------|------| | 免费版 | ¥0 | 免费内容、基础搜索、收藏 | | 高级会员 | ¥99/月 | 所有内容、PDF下载 | | 企业会员 | ¥999/年 | 所有功能 + 专家答疑 | ## 开发指南 ### 代码规范 - 使用 TypeScript 严格模式 - 组件命名采用 PascalCase - 文件命名采用 kebab-case - 遵循 ESLint 规则 ### 添加新功能 1. 在对应目录下创建组件/页面 2. 添加 TypeScript 类型定义 3. 编写单元测试 4. 更新文档 ## 测试 ```bash # 单元测试 npm test # E2E 测试 npm run test:e2e ``` ## 相关文档 - [Next.js 文档](https://nextjs.org/docs) - [Drizzle ORM 文档](https://orm.drizzle.team/docs/overview) - [NextAuth 文档](https://authjs.dev) - [Tailwind CSS 文档](https://tailwindcss.com/docs) - [Shadcn/ui 文档](https://ui.shadcn.com) ## 许可证 MIT ## 贡献 欢迎提交 Issue 和 Pull Request! --- **开发者**: haobinjun **仓库**: https://gitee.com/haobinjun/knowledge-share-platform