Spaces:
Sleeping
Sleeping
Update README.md
Browse files
README.md
CHANGED
|
@@ -9,34 +9,63 @@ app_file: app.py
|
|
| 9 |
pinned: false
|
| 10 |
---
|
| 11 |
|
| 12 |
-
# 🚦 SwiftCase.ai
|
| 13 |
-
### Smart Traffic Justice Platform
|
| 14 |
|
| 15 |
-
SwiftCase.ai is
|
| 16 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 17 |
|
| 18 |
---
|
| 19 |
|
| 20 |
-
##
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 21 |
|
| 22 |
-
- **
|
| 23 |
-
-
|
| 24 |
-
-
|
| 25 |
-
-
|
| 26 |
-
- 🧓 Friendly to all Malaysians: **Every label, button, and message is shown in 3 languages at once**
|
| 27 |
-
- English
|
| 28 |
-
- Bahasa Melayu
|
| 29 |
-
- 中文 (Chinese)
|
| 30 |
|
| 31 |
-
- **
|
| 32 |
-
-
|
| 33 |
-
-
|
|
|
|
| 34 |
|
| 35 |
-
- **
|
| 36 |
-
-
|
| 37 |
-
-
|
| 38 |
-
-
|
| 39 |
|
| 40 |
---
|
| 41 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 42 |
|
|
|
|
| 9 |
pinned: false
|
| 10 |
---
|
| 11 |
|
| 12 |
+
# 🚦 SwiftCase.ai — Real-world Traffic Offence MVP
|
|
|
|
| 13 |
|
| 14 |
+
SwiftCase.ai is a Minimum Viable Product (MVP) to streamline traffic offence handling between **citizens**, **PDRM (traffic police)** and the **magistrate / online judge**. This MVP supports:
|
| 15 |
+
|
| 16 |
+
- Digital **compound payments** to PDRM.
|
| 17 |
+
- **PDRM compound appeals** (rayuan kompaun) reviewed online by police officers (BM logs).
|
| 18 |
+
- **Judicial appeals** to Magistrate (human or AI with authority consent).
|
| 19 |
+
- Full **audit trail** (immutable logs) and digital receipts for PDRM payments.
|
| 20 |
|
| 21 |
---
|
| 22 |
|
| 23 |
+
## Key Features (real-world oriented)
|
| 24 |
+
|
| 25 |
+
- **Citizen Portal** (all labels/messages shown in 3 languages simultaneously):
|
| 26 |
+
- View case details (EN / BM / ZH)
|
| 27 |
+
- Pay compound (simulate PDRM payment)
|
| 28 |
+
- Submit **PDRM compound appeal** (Rayuan Kompaun — Bahasa Melayu)
|
| 29 |
+
- Submit **Judicial appeal** to Magistrate (EN/BM/ZH fields)
|
| 30 |
+
- View audit logs
|
| 31 |
|
| 32 |
+
- **PDRM (Police) Portal** — **Bahasa Melayu only**:
|
| 33 |
+
- Create new summons/case (structured fields reflect real PDRM ticket)
|
| 34 |
+
- See pending PDRM appeals and decide (tolak / dikurangkan)
|
| 35 |
+
- Decisions and payment receipts logged in **Bahasa Melayu**
|
|
|
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
+
- **Magistrate Portal**:
|
| 38 |
+
- Review pending judicial appeals
|
| 39 |
+
- Record decisions (Approve No Fine / Approve Reduced / Reject)
|
| 40 |
+
- Record reviewer type (human_judge / ai_agent) and authority consent when AI is used
|
| 41 |
|
| 42 |
+
- **Data & Audit**:
|
| 43 |
+
- SQLite schema includes `summons_cases`, `appeals`, `judge_reviews`, `pdrm_reviews`, `payments`, `receipts`, and `audit_logs`.
|
| 44 |
+
- PDRM-related logs/messages are recorded in **Bahasa Melayu** per requirement.
|
| 45 |
+
- Seeded demo data includes 3 fictitious cases (Ali, Ah Kow, Muthu) with tri-lingual descriptions.
|
| 46 |
|
| 47 |
---
|
| 48 |
|
| 49 |
+
## How it works (flow)
|
| 50 |
+
|
| 51 |
+
1. **PDRM issues summons** → data stored in `summons_cases`.
|
| 52 |
+
2. **Citizen**:
|
| 53 |
+
- Can **Pay Compound** immediately (payable amount stored in case).
|
| 54 |
+
- Or **Appeal to PDRM** for a reduced compound (handled by police portal).
|
| 55 |
+
- Or **Appeal to Magistrate** (judicial path).
|
| 56 |
+
3. **PDRM Officer** (Police Portal) decides on compound appeal:
|
| 57 |
+
- If **tolak** → payable stays standard RM300.
|
| 58 |
+
- If **dikurangkan** → payable updated to reduced amount.
|
| 59 |
+
- PDRM issues a digital receipt upon successful payment.
|
| 60 |
+
- All PDRM logs are written in **Bahasa Melayu**.
|
| 61 |
+
4. **Magistrate** reviews judicial appeals and issues decisions; decisions update payable amounts and are logged.
|
| 62 |
+
5. **Citizen pays** after decision; payment & receipts saved.
|
| 63 |
+
|
| 64 |
+
---
|
| 65 |
+
|
| 66 |
+
## Quick start (local / Hugging Face)
|
| 67 |
+
|
| 68 |
+
### Requirements
|
| 69 |
+
- Python 3.10+
|
| 70 |
+
- Dependencies in `requirements.txt` (Gradio, pandas). Use `gradio==5.44.1` for compatibility.
|
| 71 |
|