Benny-Tang commited on
Commit
1a142ba
·
verified ·
1 Parent(s): c404ea1

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +49 -20
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 an MVP platform that connects **citizens**, **traffic police**, and the **magistrate** to streamline traffic fine and accident case handling.
16
- The system reduces backlog, allows digital appeals, and provides the magistrate with time to review cases before hearings.
 
 
 
 
17
 
18
  ---
19
 
20
- ## Features
 
 
 
 
 
 
 
21
 
22
- - **Citizen Portal**
23
- - View traffic cases by ID
24
- - Pay fines digitally
25
- - Submit appeals with supporting evidence
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
- - **Traffic Police Portal**
32
- - Create new cases with citizen details, fines, and evidence uploads
33
- - Interface shown in **Bahasa Melayu only** 🇲🇾
 
34
 
35
- - **Magistrate Portal**
36
- - Review appealed cases in a dashboard
37
- - Decide: Approve Appeal / Reject Appeal / Escalate Hearing
38
- - Interface available in **English or Bahasa Melayu**
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