🌐 在线访问:youycg.site
项目介绍 • 功能特点 • 技术栈 • 项目截图 • 安装和使用 • 项目结构 • 贡献指南 • 许可证
"吃啥好呢"是一个基于Vue.js和Express.js的美食推荐网站,旨在帮助用户解决"今天吃什么"的日常难题。通过个性化推荐算法,用户可以根据自己的饮食偏好、口味喜好、烹饪难度和时间限制,获取最适合的食谱推荐。
除了食谱推荐功能外,平台还提供了社区互动功能,用户可以分享自己的烹饪经验、食谱创作和美食心得,形成一个充满活力的美食社区。
- 个性化美食推荐:根据用户设置的饮食偏好、口味偏好、烹饪难度和时间限制推荐食谱
- 用户账户管理:注册、登录、密码重置、个人资料管理
- 个人中心:查看和管理收藏的食谱和帖子
- 食谱搜索与筛选:多条件组合搜索和筛选食谱
- 食谱评分与收藏:对食谱进行评分、评论和收藏
- 深色模式支持:支持浅色/深色主题切换
- 社区互动:浏览、发布、编辑和删除帖子
- 多媒体支持:支持图片和视频上传
- 评论系统:对帖子进行评论和回复
- 点赞与收藏:对帖子进行点赞和收藏
- 用户管理:查看、编辑和管理用户账户
- 内容管理:管理食谱、帖子和评论
- 数据统计:用户活跃度和内容数据统计
- 系统设置:网站基本设置和功能配置
- 框架:Vue.js 3
- 路由:Vue Router 4
- 状态管理:Pinia
- UI组件库:Element Plus
- HTTP客户端:Axios
- 样式:SCSS
- 视频播放:Video.js
- 框架:Express.js
- 数据库:MongoDB Atlas (云数据库)
- ODM:Mongoose
- 身份验证:JWT (JSON Web Token)
- 密码加密:Bcrypt
- 文件上传:Multer
- 数据验证:Express Validator
- Node.js (v14+)
- npm (v6+)
- MongoDB Atlas账号或本地MongoDB实例
- 克隆仓库
git clone https://github.com/yourusername/eat-project.git
cd eat-project- 安装后端依赖
cd eat-backend
npm install-
配置后端环境变量
- 复制
.env.example文件为.env - 编辑
.env文件,填入MongoDB连接字符串和JWT密钥
- 复制
-
初始化数据库
npm run seed- 启动后端服务
npm run dev- 安装前端依赖
cd ../eat-frontend
npm install-
配置前端环境变量
- 复制
.env.example文件为.env - 编辑
.env文件,设置API地址
- 复制
-
启动前端开发服务器
npm run serve- 在浏览器中访问
http://localhost:8080
- 构建前端
cd eat-frontend
npm run build-
配置后端为生产环境
- 在
.env文件中设置NODE_ENV=production
- 在
-
启动后端服务
cd ../eat-backend
npm starteat-project/
├── eat-frontend/ # Vue.js前端项目
│ ├── public/ # 静态资源
│ ├── src/ # 源代码
│ │ ├── assets/ # 资源文件
│ │ ├── components/ # 组件
│ │ ├── router/ # 路由配置
│ │ ├── stores/ # Pinia状态管理
│ │ ├── styles/ # 全局样式
│ │ ├── utils/ # 工具函数
│ │ ├── views/ # 页面组件
│ │ ├── App.vue # 根组件
│ │ └── main.js # 入口文件
│ ├── .env.example # 环境变量示例
│ └── package.json # 依赖配置
│
├── eat-backend/ # Express.js后端项目
│ ├── config/ # 配置文件
│ ├── controllers/ # 控制器
│ ├── middleware/ # 中间件
│ ├── models/ # 数据模型
│ ├── routes/ # 路由
│ ├── seeds/ # 数据种子
│ ├── uploads/ # 上传文件存储
│ ├── utils/ # 工具函数
│ ├── .env.example # 环境变量示例
│ ├── app.js # 应用配置
│ ├── index.js # 入口文件
│ └── package.json # 依赖配置
│
├── screenshots/ # 项目截图
├── .gitignore # Git忽略文件
├── LICENSE # 许可证文件
├── README.md # 项目说明
├── CONTRIBUTING.md # 贡献指南
└── CODE_OF_CONDUCT.md # 行为准则
我们欢迎所有形式的贡献,无论是新功能、bug修复还是文档改进。请查看贡献指南了解更多信息。
本项目采用MIT许可证。详情请参阅LICENSE文件。




