EZ2 Lotto

Instant draw results, stats, and ticket checks, all in one sleek app.

About EZ2 Lotto

APK FILE
https://drive.google.com/file/d/1P_P6FxcJqWAEeFXnSsj3fW6mB7QLP7KF/view?usp=sharing

**EZ2 Lotto** is a Flutter-based mobile application for tracking **Philippine Charity Sweepstakes Office (PCSO) EZ2 / 2D Lotto** results in real time. It delivers live draw updates, a full historical archive, statistical analysis, and ticket verification — all powered by a Supabase backend with realtime subscriptions and automated web scraping.


**Version:** `1.0.2` · **Platform:** Android / iOS / Web · **Language:** Dart 3 (Flutter)


---


## 🚀 Features


### Live Draw Results

- Real-time updates for all three daily draws (2 PM / 5 PM / 9 PM PHT) via Supabase Realtime channels.

- Draw status indicators — **LIVE**, **SOON**, or **CLOSED** — calculated against the Philippine Time draw windows.

- Auto-refresh cadence increases during active draw windows and backs off outside them.


### Historical Archive

- Browse past results grouped by **year → month → day**, with per-draw winner counts.

- Cache-first data strategy: past months are treated as immutable and never re-fetched; the current month refreshes after 30 minutes; today refreshes after 10 minutes during draw windows or 60 minutes otherwise.


### Statistics & Insights

- **Hot numbers** — most frequently drawn digits across a configurable lookback range.

- **Cold numbers** — least frequently drawn digits with days-since-last-seen counters.

- **Top combos** — most repeated two-digit pairs, sorted by frequency.

- **Pair analysis** — per-digit frequency split by first vs. second position.

- **Winner charts** — draw-level winner counts to spot high-payout trends.


### Ticket Checker

- **Camera / Gallery OCR** — upload a ticket photo; the `read-ticket` Supabase Edge Function extracts the printed numbers.

- **Manual input** — enter combos directly with date and draw-slot filters.

- **Prize calculation** — determines Straight vs. Rambolito match type and computes the payout.


### Offline Support

- `CacheService` persists all fetched results and metadata in `SharedPreferences`.

- The app launches instantly from cache and synchronizes in the background when connectivity is restored.

- An **offline banner** is displayed when `ConnectivityService` detects no active network.


### Settings & Preferences

- **Dark mode** — full Material 3 light/dark theming (seed color `#C0392B`).

- **Language toggle** — English / Filipino, persisted across sessions via `AppLocale`.

- **In-app update checker** — queries the `app_versions` Supabase table and prompts users to download the latest APK.

- **Admin tools** — debug screen for inspecting cache state and triggering manual fetches.


### Security

- **Root / jailbreak detection** — blocks launch on compromised devices or when Developer Options are enabled (release mode only) via `flutter_jailbreak_detection`.

- **Credential injection** — Supabase URL and anon key are provided exclusively through `--dart-define` at build time; never hardcoded in production artifacts.


---


## 🧭 App Screens


| Tab | Screen | Description |

| --- | ------ | ----------- |

| **Results** | `TodayScreen` | Today's live results with draw status indicators (LIVE / SOON / CLOSED). |

| **History** | `HistoryScreen` | Year/month navigator with per-day result cards and winner counts. |

| **Statistics** | `StatsScreen` | Hot/cold numbers, top combos, pair analysis, and winner trend charts. |

| **Ticket** | `TicketScreen` | OCR scan or manual entry to check tickets and compute prizes. |

| **Settings** | `SettingsScreen` | Dark mode, language, update checker, share, and admin/debug tools. |

Screenshots

4

Comments

0

No comments yet. Start the discussion with something useful.

Reviews

0
0.0

Based on 0 reviews

0 reviews
0 reviews
0 reviews
0 reviews
0 reviews

Review EZ2 Lotto?

Leave a review