A local nutrition tracking app powered by AI
| Feature | Priority | Effort | Status | Notes |
|---|---|---|---|---|
| Calendar View | P1 | Low | ⏳ Planned | Natural extension of existing history |
| Meal Plan Presets | P1 | Low | ⏳ Planned | Extend existing settings framework |
| Health Mode Switch | P1 | Low | ⏳ Planned | UI emphasis on different nutrition metrics |
| PWA Support | P2 | Medium | 📋 Planning | Next.js built-in support |
| Calendar Image Sharing | P2 | Medium | 📋 Planning | Frontend generated, no storage needed |
| Pre/Post Meal Comparison | P2 | Medium | 📋 Planning | High value user insights |
| Blood Sugar Risk Assessment | P3 | Medium-High | 📋 Planning | Requires carb/GI database |
| Lipid / Vascular Pressure Assessment | P3 | Medium-High | 📋 Planning | Requires fat/cholesterol breakdown data |
| Purine Risk Assessment | P3 | Medium-High | 📋 Planning | For gout-prone users |
| Liver Risk Assessment | P4 | High | 📋 Planning | Requires medical model, use caution |
Decision: Frontend generation + Frontend consumption
User clicks "Share" → html2canvas generates image → User saves/shares → Image discarded
Rationale:
Implementation Plan:
html2canvascomponents/calendar/ShareButton.tsxgetHistory APIdefault_meal_plan setting[ ] health_focus setting: general |
glycemic | lipid | purine |
public/manifest.json configurationnext.config.tshtml2canvas integrationShareButton componentArchitecture Design:
lib/
├── health/ ← Phase 3 (Planned)
│ ├── glycemic.ts # Blood sugar assessment
│ ├── lipid.ts # Lipid assessment
│ └── purine.ts # Purine assessment
components/
├── calendar/ ← Phase 1 (Planned)
│ ├── CalendarGrid.tsx
│ ├── DayCell.tsx
│ └── ShareButton.tsx ← Phase 2
├── health/ ← Phase 3 (Planned)
│ ├── RiskIndicator.tsx
│ └── ReportCard.tsx
└── meal-plans/ ← Phase 1 (Planned)
└── PresetSelector.tsx
user_id columns to avoid orphaned existing data