Transitioned from Plan to Build mode

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 1fa9329f-0cec-4a2f-80e8-e26dbae3142e
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: e5ed57af-b8c5-4aa1-8438-7cf91e542e87
Replit-Helium-Checkpoint-Created: true
This commit is contained in:
Replit Agent
2026-06-05 16:54:25 +00:00
parent 2246770e5b
commit 2da838bb66
2 changed files with 349 additions and 0 deletions
@@ -0,0 +1,341 @@
Build an authorized internal POC website for EHSAN Closed Donation Loop.
Use https://ehsan.sa/ as the main visual design reference.
Important design requirement:
Recreate the UI style as closely as possible for an authorized internal POC:
* Arabic RTL layout
* EHSAN-style visual identity
* Green and white color palette
* Similar header and navigation structure
* Similar card layout
* Similar donation opportunity cards
* Similar progress bars
* Similar buttons
* Similar spacing
* Similar rounded corners
* Similar professional government-style interface
* Similar typography feel
* Clean, polished, responsive design
The POC must look visually very close to the official EHSAN website design, but the functionality should remain limited to the Closed Donation Loop POC only.
Do not change the business workflow.
Project goal:
Create a small EHSAN-style Arabic RTL website that demonstrates how the donation cycle can be closed from the beneficiary request until the donor receives a thank-you message through WhatsApp using OpenClaw.
Core concept:
The donation journey should not stop at payment.
It should continue until:
1. Support is delivered to the beneficiary.
2. The beneficiary confirms receipt.
3. The beneficiary submits a thank-you message.
4. OpenClaw sends the thank-you message to the donor through WhatsApp.
5. The case is closed.
Request sources:
The request can be created from only one of these three sources:
1. Beneficiary directly through EHSAN.
2. Charity, for example:
* Food basket
* Refrigerator
* Air conditioner
3. Official or service entity, for example:
* Ministry of Justice
* Electricity Company
* Water Company
Important business rule:
The charity must NOT be the main middle layer between EHSAN and the beneficiary.
EHSAN should be able to deal directly with the beneficiary.
The charity role should only be:
* Verification
* Recommendation
* Execution support when needed
POC verification:
Since Nafath and Tawakkalna integrations are not available in this POC, create a simple internal eligibility database to simulate eligibility verification.
Verification logic:
* If beneficiary National ID exists in the internal eligibility database and status is eligible, mark the request as Verified.
* If the National ID is not found, mark the request as Pending Review.
* If the beneficiary is marked as ineligible, mark the request as Rejected.
Main workflow:
Request Submitted
→ Eligibility Check
→ Verified
→ Published
→ Donor Donated
→ Support Delivered
→ Beneficiary Confirms Receipt
→ Beneficiary Writes Thank-You Message
→ OpenClaw Sends WhatsApp Message to Donor
→ Case Closed
Website pages:
1. Home Page
* EHSAN-style hero section
* Search area for donation opportunities
* Featured donation opportunity cards
* Simple statistics section
* Short explanation of the Closed Donation Loop concept
2. Beneficiary Request Page
Create a form with:
* Full name
* National ID
* Phone number
* Request source:
* Beneficiary
* Charity
* Official / Service Entity
* Source name
* Need type
* Requested amount
* Case description
Need type options:
* Electricity
* Water
* Food
* Health
* Housing
* Refrigerator
* Air Conditioner
* Court Order
3. Donation Opportunities Page
Show published opportunities as cards.
Each card should include:
* Case title
* Need type
* Requested amount
* Collected amount
* Remaining amount
* Progress bar
* Verified badge
* Donate button
* Case status
4. Donor Donation Simulation Page
No real payment gateway.
When the donor clicks Donate:
* Ask for donor name
* Donor phone number
* Donor email optional
* Donation amount
* Confirm donation button
After confirmation:
* Mark the case as Donated
* Show a success message
5. Admin Dashboard
Show all requests and cases in a professional dashboard.
Dashboard columns:
* Case ID
* Beneficiary name
* Source
* Need type
* Requested amount
* Status
* Current step
* Last update
Dashboard actions:
* Verify
* Publish
* Mark as Donated
* Mark Support as Delivered
* Confirm Receipt
* View Thank-You Message
* Send WhatsApp via OpenClaw
* Close Case
* Reject
6. Closed Donation Loop Tracking Page
Create a visual timeline for each case:
7. Request Submitted
8. Eligibility Check
9. Verified
10. Published
11. Donor Donated
12. Support Delivered
13. Receipt Confirmed
14. Thank-You Submitted
15. WhatsApp Sent via OpenClaw
16. Closed
The timeline should clearly show completed steps and pending steps.
7. Beneficiary Thank-You Message Page
After support is delivered, the beneficiary can write a thank-you message.
Form fields:
* Case ID
* Beneficiary name
* Thank-you message
Example message:
جزاكم الله خيراً، وصلني الدعم وكان له أثر كبير عليّ.
After submission:
* Mark status as Thank You Submitted
* Make it ready for OpenClaw WhatsApp sending
8. WhatsApp Message Log Page
This page simulates WhatsApp sending through OpenClaw.
Show:
* Case ID
* Donor name
* Donor phone number
* Beneficiary thank-you message
* WhatsApp message preview
* Sent status
* Sent time
Example WhatsApp message:
السلام عليكم، نشكركم على تبرعكم عبر منصة إحسان.
تم إيصال الدعم للمستفيد، وهذه رسالة الشكر من المستفيد:
"جزاكم الله خيراً، وصلني الدعم وكان له أثر كبير عليّ."
رقم الحالة: CASE-001
Status list:
* Pending WhatsApp Send
* WhatsApp Sent
* Failed
Admin statuses:
Use these exact statuses:
* New
* Pending Review
* Verified
* Published
* Donated
* Delivered
* Receipt Confirmed
* Thank You Submitted
* WhatsApp Sent
* Closed
* Rejected
OpenClaw integration:
Create API endpoints that OpenClaw can call later.
Required API endpoints:
GET /api/requests
GET /api/requests/new
GET /api/requests/:id
POST /api/requests/:id/verify
POST /api/requests/:id/publish
POST /api/requests/:id/donate
POST /api/requests/:id/deliver
POST /api/requests/:id/confirm-receipt
POST /api/requests/:id/thank-you
POST /api/requests/:id/send-whatsapp
POST /api/requests/:id/close
POST /api/requests/:id/reject
WhatsApp POC behavior:
Do not integrate real WhatsApp API yet.
Create a simulated WhatsApp message screen and log.
The system should prepare the WhatsApp message so OpenClaw can later send it through its WhatsApp channel.
Data:
Use mock data only.
Use local mock database, SQLite, or JSON data.
No real payment integration.
No real Nafath integration.
No real Tawakkalna integration.
No real government integrations.
Seed mock data:
Create at least 8 sample cases:
1. Electricity bill support
2. Water bill support
3. Food basket
4. Medical support
5. Housing support
6. Refrigerator
7. Air conditioner
8. Court order support
Create at least 5 mock eligible beneficiaries in the internal eligibility database.
Create at least 3 mock donors.
Add a clear workflow diagram inside the website explaining the full journey in Arabic:
عنوان الرسم:
إقفال دورة التبرع
Steps:
1. مقدم الطلب
2. منصة إحسان
3. التحقق من الاستحقاق
4. نشر الفرصة
5. المتبرع
6. تنفيذ الدعم
7. تأكيد الاستلام
8. رسالة شكر من المستفيد
9. إرسال واتساب عبر OpenClaw
10. إغلاق الحالة
Subtitle:
إقفال دورة التبرع من رفع الطلب حتى وصول رسالة الشكر للمتبرع عبر واتساب.
Technical stack:
* Next.js
* Tailwind CSS
* Arabic RTL
* Responsive design
* Local mock database, SQLite, or JSON mock data
* Clean component structure
Quality requirements:
* The UI must be polished and presentation-ready.
* The website should feel like a real government-style charity platform.
* Arabic text must be properly aligned RTL.
* Buttons and cards must look professional.
* The demo flow must be easy to present in a meeting.
* Keep the scope focused only on the Closed Donation Loop POC.