A Pay-Per-Minute Legal Video Consultation Platform
SALAH is a full-stack web application designed to bridge the gap between clients and legal experts. It transforms the traditional, time-consuming process of booking lawyer appointments into a seamless digital experience. Through real-time video conferencing and a custom "Pay-Per-Minute" wallet system, SALAH guarantees financial transparency for clients and automated, fair compensation for lawyers.
SALAH.Legal.Consultation.Platform_.Prototype.Demo.video.1080P_HD.mp4
- ⏱️ Live Billing Meter (Pay-Per-Minute): JavaScript-driven live timer that tracks consultation duration. Includes a 2-minute free grace period before initiating per-minute billing.
- 💳 Integrated Digital Wallet:
A secure virtual ledger utilizing atomic database transactions (
transaction.atomic) to ensure funds are accurately debited from clients and credited to lawyers without data loss. - 📹 Instant Video Rooms: Integrated with the Daily.co WebRTC API to dynamically generate secure, expiring video consultation rooms.
- 👥 Role-Based Access Control (RBAC): Distinct authentication flows and customized dashboards for 'Clients' and 'Lawyers'.
- 📁 Structured Case Briefs: Clients submit specific case details (Category, Subject, Description) which lawyers can review and Accept/Reject prior to a call.
- ⭐ Rating & Analytics System: Post-consultation feedback loop and real-time earnings analytics displayed on the Lawyer's dashboard.
- Backend: Python, Django (MVT Architecture)
- Frontend: Semantic HTML5, Modern CSS3 (CSS Variables, Flexbox, Grid), Vanilla JavaScript (ES6+)
- Database: SQLite (Development/MVP)
- External APIs: Daily.co REST API (for WebRTC Video Conferencing)
- Tools: Git, GitHub, VS Code, Ngrok (for local HTTPS testing)
Follow these steps to get the project running on your local machine.
- Python 3.x installed on your machine.
- A free API key from Daily.co.
git clone https://github.com/yourusername/SALAH.git
cd SALAH# Create virtual environment
python -m venv venv
# Activate it (Windows)
venv\Scripts\activate
# Activate it (Mac/Linux)
source venv/bin/activatepip install django requestsCreate .env and add your Daily.co credentials. For reference refer to the .env.example file:
DAILY_API_KEY = "your_api_key_here"
DAILY_SUBDOMAIN = "your_subdomain"
SECRET_KEY = "your_secret_key_here"
DEBUG = True
python manage.py makemigrations
python manage.py migratepython manage.py createsuperuserpython manage.py runserverVisit http://127.0.0.1:8000 in your browser to view the application.
WebRTC (Camera and Microphone access) requires a secure HTTPS connection. If you want to test a video call between two different laptops/phones locally:
- Install Ngrok.
- In
settings.py, ensureALLOWED_HOSTS = ['*']and addCSRF_TRUSTED_ORIGINS = ['https://*.ngrok-free.app']. - Run your Django server:
python manage.py runserver. - In a new terminal, start the tunnel:
ngrok http 8000. - Use the generated
https://...ngrok-free.applink to access the site on your second device.
This project was developed collaboratively during the EY GDS Next Gen 4.0 Employability Program.
- Abduldiyan – Backend Developer (Django Architecture, Daily.co API, Wallet/Billing Logic)
- Tarim – Database Administrator (Schema Design, Relational Mapping)
- Harshili & Saniya – Frontend Developers (UI/UX Design, CSS Styling, Responsive Layouts)
- Yogesh – Project Coordinator & QA (Workflow Management, Testing, Presentations)
Mentorship: Special thanks to Mr. Vipul Kayate (Master Trainer, EY GDS) for his invaluable guidance.
This project was built for educational and demonstration purposes as an MVP. Feel free to explore, fork, and use this codebase as a reference for integrating WebRTC, managing custom wallet ledgers, or building role-based Django applications.
While SALAH is currently a fully functional MVP, we have exciting plans for future iterations:
- 💳 Real Payment Gateways: Integrate Stripe or Razorpay to transition the virtual wallet into handling real-world transactions and bank payouts.
- 🤖 AI Legal Assistant: Add an AI layer to summarize lengthy case briefs and extract key legal statutes before the lawyer reviews the request.
- 📄 Secure Document Vault: Implement end-to-end encrypted document sharing for sensitive legal files (PDFs, images) between clients and lawyers.
- 📱 Mobile Application: Build dedicated iOS and Android apps using React Native or Flutter for consultations on the go.
“Justice delayed is justice denied. We built SALAH to make sure neither happens.” ⚖️