Files
calorie-counter/mobile/package.json
Andris Enins 91cd18aec6 feat: initial implementation — all 35 requirements across phases 1-3
Backend (Spring Boot 3.2 / Java 21 / PostgreSQL):
- JWT auth with BCrypt password hashing
- User profile + Mifflin-St Jeor BMR calculator
- Food search + barcode via OpenFoodFacts API with local cache
- Meal CRUD with user data isolation and ownership checks
- AI photo analysis (OpenAI Vision) with confidence intervals
- AI correction feedback loop for personalisation
- Flyway DB migrations + RFC-7807 error responses

Mobile (React Native / TypeScript):
- Full navigation stack (Auth → Tabs → Home stack)
- Design tokens (WCAG 2.2 AA colours, 8px grid, 48px touch targets)
- 10 screens: Login, Register, Home, Search, Camera, AI Result, Edit Meal,
  Daily Details, History, Profile
- Confidence-aware calorie display (kcal ± range)
- Repeat last meal shortcut + macro tracking

Docs:
- docs/PLAN-AND-REQUIREMENTS.md
- docs/traceability.csv (35 requirements, all Implemented)
2026-05-18 21:56:13 +03:00

44 lines
1.3 KiB
JSON

{
"name": "calorie-counter-mobile",
"version": "1.0.0",
"private": true,
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint src --ext .ts,.tsx"
},
"dependencies": {
"react": "18.2.0",
"react-native": "0.73.6",
"@react-navigation/native": "^6.1.17",
"@react-navigation/bottom-tabs": "^6.5.20",
"@react-navigation/native-stack": "^6.9.26",
"react-native-screens": "^3.31.1",
"react-native-safe-area-context": "^4.10.1",
"react-native-camera": "^4.2.1",
"@react-native-community/slider": "^4.5.2",
"axios": "^1.7.2",
"@react-native-async-storage/async-storage": "^1.23.1",
"react-native-vector-icons": "^10.1.0"
},
"devDependencies": {
"@babel/core": "^7.24.0",
"@babel/preset-env": "^7.24.0",
"@babel/runtime": "^7.24.0",
"@react-native/eslint-config": "^0.73.2",
"@react-native/metro-config": "^0.73.5",
"@tsconfig/react-native": "^3.0.3",
"@types/react": "^18.2.72",
"@types/react-native": "^0.73.0",
"@types/react-native-vector-icons": "^6.4.18",
"typescript": "5.0.4",
"jest": "^29.6.3",
"@testing-library/react-native": "^12.4.3"
},
"jest": {
"preset": "react-native"
}
}