Repository navigation
EasyMeals v2.0.0
Bản lớn đầu tiên với ứng dụng native (Android Kotlin/Compose, iOS SwiftUI) cùng bản web/PWA, dữ liệu cá nhân lưu hoàn toàn trên thiết bị.
Thực đơn và kho
- Lập thực đơn 1–7 ngày (mặc định 3); thực đơn mới trùng ngày chưa ăn sẽ hỏi giữ hay thay, bữa đã ăn luôn được giữ.
- Tận dụng đồ ăn dư (1–3 ngày, mặc định 2); chọn món thủ công (thêm/đổi/bỏ) trên Web, Android và iOS.
- Nguyên liệu cần tránh: loại món khi lập thực đơn, cảnh báo dữ liệu dị ứng chưa xác minh, hỏi xác nhận khi chọn món vi phạm.
- Mua hàng vào tủ có chỉnh lượng thực mua và hạn dùng theo nhóm.
Công thức
- Bộ lọc thời gian và độ khó, hiển thị mẹo bảo quản (nguồn FDA) trên cả ba nền tảng.
Lịch sử, nhắc việc, chuyển máy
- Thẻ Lịch sử: số bữa đã nấu, biến động kho, đồ dư dùng lại, chi tiêu đã nhập.
- Nhắc hạn dùng và bữa ăn lúc 9:00 theo giờ máy (Android xin quyền thông báo khi bạn bật; iOS dùng thông báo cục bộ).
- Sao lưu/khôi phục JSON (schema 3), nhập được giữa Web và mobile theo cả hai chiều.
Sửa lỗi bố cục khi dùng trên máy thật
- Màn Công thức không còn bị bộ lọc chiếm hết màn hình; hàng chip đồ dư và hàng món không còn bị cắt trên màn hình hẹp.
Kiến trúc và bảo mật: không tài khoản, không lưu dữ liệu cá nhân trên server; Android không có quyền Internet; gỡ Capacitor không còn dùng.
Tệp đính kèm: APK debug và IPA chưa ký chỉ để thử nghiệm, không phải bản phân phối chính thức. EasyMeals-v2.0.0-ios-simulator.zip dành cho iOS Simulator.
Chưa kiểm chứng: thông báo nhắc việc thật lúc 9:00, iPhone thật/màn hình nhỏ, chuyển dữ liệu giữa hai máy thật. Dữ liệu thời gian/độ khó của 106/133 món là ước lượng có nguồn.
Cập nhật Supabase: chạy bash scripts/update_supabase.sh (dry-run mặc định) — xem docs/deploy.md.