⚡ TASKZ — Automated prepaid token tracker & blackout alerter for Kenya Power (KPLC) customers. Add a meter once, the backend does the rest: full purchase history, usage-rate prediction, days-left countdown, and pay-before alerts via Telegram.
# TASKZ — KPLC Token Tracker & Blackout Alerter
Automatic prepaid electricity token tracking for Kenya Power (KPLC) customers.
Add a meter number once. The system does everything else — no manual data
entry, no pasting SMS, no checking the portal yourself.
## The problem
KPLC's self-service portal (and prepaid tokens generally) only show the last
handful of purchases per meter, with no full history and no API. Users have
no way to see their real consumption trend over time, and no warning before
they run out of units and lose power — especially painful for students and
anyone on a tight budget who tops up in small amounts.
## What this does
1. User registers and adds **one meter number**.
2. From that point on, the system automatically:
- Polls KPLC's public self-service search for that meter on a schedule
- Detects new token purchases the moment they appear
- Stores every token permanently (building the full history KPLC never
kept)
- Recalculates usage rate, units remaining, and estimated blackout date
- Sends a notification before the user runs out
3. User never touches the portal, never pastes anything, never manually logs
usage. The meter number is the only input required.
Adding a **second, different meter number** creates a **separate user
account** scoped to that meter — each meter is tracked independently, with
its own history, usage rate, and notification schedule. This keeps shared
households (e.g. one user tracking a personal meter, another tracking a
family meter) cleanly separated instead of merging usage data that doesn't
belong together.
## How it works (architecture)
```
┌─────────────┐ ┌────────────────────────┐ ┌───────────────────┐
│ Frontend │─────>│ API + Backend . │─────>│ Database │
│ (add meter, │ │ - user & meter mgmt │ │ users, meters, │
│ view usage)│ │ - usage engine │ │ tokens │
└─────────────┘ └─────────┬──────────────┘ └───────────────────┘
| …