Skip to content

ZHOUKAILIAN/smart-ingredients

Repository files navigation

🔍 食品配料表分析助手 (Smart Ingredients)

智能食品配料表分析工具 | OCR + AI 驱动的健康评分与风险提示

License: MIT Rust Tauri

功能特性技术栈快速开始文档贡献指南


📖 项目简介

Smart Ingredients 是一个跨平台的智能食品配料表分析工具,帮助用户快速了解食品的健康程度。

核心能力:

  • 📷 拍照识别:拍照或上传配料表图片
  • 🔤 OCR 提取:自动识别配料文字信息
  • 🤖 AI 分析:结合大模型智能分析成分与风险
  • 📊 健康评分:输出健康评分与风险提示
  • 💾 历史记录:保存分析历史,随时查看

✨ 功能特性

  • 跨平台支持:基于 Tauri,支持 Windows、macOS、Linux
  • 高性能 OCR:集成 PaddleOCR,准确识别配料表文字
  • 智能 AI 分析:接入 DeepSeek / 智谱 AI,深度解析成分风险
  • 实时健康评分:即时反馈食品健康度与潜在风险
  • 数据本地化:支持本地存储分析历史(PostgreSQL + Redis)
  • 现代化 UI:基于 Leptos 构建,响应式设计,流畅体验

🛠️ 技术栈

前端

后端

  • 框架Axum 0.7.x
  • 语言:Rust
  • 数据库:PostgreSQL 16.x + SQLx
  • 缓存:Redis 7.x

AI 服务

  • OCR:PaddleOCR (FastAPI)
  • LLM:DeepSeek / 智谱 AI

开发工具

  • 容器化:Docker + Docker Compose
  • 代码质量:cargo fmt + cargo clippy
  • 文档驱动:严格的文档优先开发流程

🚀 快速开始

方式一:Docker 一键启动(推荐)

# 克隆仓库
git clone https://github.com/ZHOUKAILIAN/smart-ingredients.git
cd smart-ingredients

# 启动所有服务
docker-compose up -d

# 访问应用
# 前端: http://localhost:1420
# 后端 API: http://localhost:3000

方式二:本地开发启动

前置要求:

  • Rust 1.75+
  • Node.js 18+
  • PostgreSQL 16+
  • Redis 7+
  • Python 3.8+ (用于 OCR 服务)
# 1. 启动后端
cd backend
cargo run

# 2. 启动前端(新终端)
cd frontend
cargo tauri dev

# 3. 启动 OCR 服务(新终端)
cd ocr-service
pip install -r requirements.txt
python app.py

详细启动文档:

  • Docker 启动:docs/run/docker-setup.md
  • 本地开发:docs/run/backend-startup.md

📚 文档

核心文档

开发文档

协作文档


📁 项目结构

smart-ingredients/
├── frontend/           # Tauri + Leptos 前端应用
├── backend/            # Axum 后端服务
├── shared/             # 共享类型定义(workspace member)
├── ocr-service/        # PaddleOCR 服务(Python)
├── docs/               # 项目文档
│   ├── requirements/   # 需求文档
│   ├── design/         # 设计文档
│   ├── api/            # API 文档
│   ├── standards/      # 编码规范
│   ├── analysis/       # 项目分析
│   └── run/            # 运行指南
├── scripts/            # 开发脚本
├── Cargo.toml          # Workspace 配置
├── CLAUDE.md           # AI 协作规范
└── README.md           # 项目说明

🤝 贡献指南

我们欢迎所有形式的贡献!在提交代码前,请确保:

  1. 阅读文档优先开发流程:查看 CLAUDE.md 了解文档驱动开发规范
  2. 遵循编码规范:运行 cargo fmtcargo clippy
  3. 编写测试:为新功能添加单元测试或集成测试
  4. 更新文档:如有 API 或功能变更,同步更新文档

贡献流程:

# 1. Fork 仓库并克隆
git clone https://github.com/YOUR_USERNAME/smart-ingredients.git

# 2. 创建功能分支
git checkout -b feat/your-feature

# 3. 提交代码
git commit -m "feat: add your feature"

# 4. 推送分支
git push origin feat/your-feature

# 5. 创建 Pull Request

📄 License

本项目采用 MIT License 开源协议。


🙏 致谢

感谢以下开源项目:


如果这个项目对你有帮助,请给一个 ⭐️ Star!

Made with ❤️ by ZHOUKAILIAN

About

🔍 智能食品配料表分析助手 | OCR + AI 智能分析食品配料表,提供健康评分与风险提示 | Rust + Tauri + Leptos + Axum

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors