NutriScan - iOS Nutrition Tracking App

01 Project Overview

NutriScan is an iOS nutrition tracking application that uses Apple's Vision framework for OCR text recognition to extract nutritional information from food labels. Built with Swift and UIKit, the app provides automated data extraction, manual entry fallback, and data visualization through interactive bar charts. The app features CoreData persistence, daily target tracking, and a clean three-screen navigation architecture.

02 Key Features & Achievements

OCR-based nutrition scanning using Apple's Vision framework for automatic extraction of protein, fat, sugar, and calories from food label images

Manual data entry fallback with validation for when OCR fails or user prefers manual input

CoreData persistence for local storage of nutrition entries with timestamps

Interactive data visualization with bar charts showing nutrient totals and daily percentages using DGCharts

Clean three-screen navigation architecture: Welcome → Scan → Stats with intuitive user flow

Daily target tracking with percentage calculations based on recommended daily values (50g protein, 70g fat, 50g sugar, 2000 kcal)

Text parsing with regex patterns handling multiple keyword variations and unit awareness (g, mg, kcal, cal)

03 Technical Stack

Swift
UIKit
CoreData
Vision
VisionKit
DGCharts

04 Challenges & Solutions

Implementing accurate OCR-based nutrition extraction from food labels with varying formats and text positioning, while providing a smooth user experience

The project required integrating Apple's Vision framework for OCR text recognition, developing regex parsing to handle multiple keyword variations and unit formats, implementing error handling for OCR failures, and creating an intuitive three-screen navigation flow. Challenges included handling calories positioned separately on labels, managing asynchronous OCR processing with main thread UI updates, and ensuring CoreData persistence across app launches.

05 Key Achievements

Successfully implemented OCR-based nutrition extraction with Vision framework achieving high-accuracy text recognition

Built complete iOS app with three-view architecture and smooth navigation flow

Integrated CoreData for persistent storage with type-safe entity classes and efficient batch operations

Created interactive data visualization dashboard with bar charts and daily percentage tracking