{"id":20614416,"url":"https://github.com/aryan-programmer/justice-firm-v2","last_synced_at":"2026-04-14T05:33:33.878Z","repository":{"id":162947895,"uuid":"600674904","full_name":"aryan-programmer/justice-firm-v2","owner":"aryan-programmer","description":" A website for lawyers, and for clients to access their service. Implemented with AWS Lambda \u0026 API Gateway for the backend, and Nuxt.js \u0026 Vue for the frontend.","archived":false,"fork":false,"pushed_at":"2025-09-10T07:08:36.000Z","size":14879,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-10T10:56:09.768Z","etag":null,"topics":["aws-apigateway","aws-cdk","aws-lambda","aws-rds","aws-s3","esbuild","javascript","jwt","mariadb","material-ui","nodejs","nuxt","nuxt3","s3","typescript","vue","vue3","vuetify","websocket","websocket-chat"],"latest_commit_sha":null,"homepage":"https://justice-firm.netlify.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aryan-programmer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-12T08:19:22.000Z","updated_at":"2025-09-10T07:08:40.000Z","dependencies_parsed_at":null,"dependency_job_id":"e780939e-d25b-4ab4-b7d4-38ee8e7dc308","html_url":"https://github.com/aryan-programmer/justice-firm-v2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aryan-programmer/justice-firm-v2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aryan-programmer%2Fjustice-firm-v2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aryan-programmer%2Fjustice-firm-v2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aryan-programmer%2Fjustice-firm-v2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aryan-programmer%2Fjustice-firm-v2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aryan-programmer","download_url":"https://codeload.github.com/aryan-programmer/justice-firm-v2/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aryan-programmer%2Fjustice-firm-v2/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31784253,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-apigateway","aws-cdk","aws-lambda","aws-rds","aws-s3","esbuild","javascript","jwt","mariadb","material-ui","nodejs","nuxt","nuxt3","s3","typescript","vue","vue3","vuetify","websocket","websocket-chat"],"created_at":"2024-11-16T11:12:41.253Z","updated_at":"2026-04-14T05:33:33.873Z","avatar_url":"https://github.com/aryan-programmer.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Justice Firm\n\nA comprehensive web platform connecting clients with legal professionals, featuring advanced search, appointment booking, and real-time communication.\n\n## About The Project\n\nJustice Firm is a full-stack web application designed to serve as a centralized platform where clients can easily find and hire lawyers based on their specific needs, and lawyers can register to offer their services. The existing system for finding legal help is often fragmented, requiring users to browse multiple firm-specific websites and conduct separate searches for contact information and location.\n\nThis application solves that problem by providing a single, consolidated directory with powerful search and communication tools, creating a seamless and efficient experience for both clients and legal professionals.\n\n## Key Features\n\nThe application is built with three distinct user roles: **Client**, **Lawyer**, and **Administrator**.\n\n#### For Clients:\n\n- **Intuitive Registration \u0026 Login**: Secure account creation and authentication.\n- **Advanced Lawyer Search**: Find lawyers by name, email, or physical location.\n- **Geolocation Integration**: Automatically uses HTML5 Geolocation to find the user's current location and sort lawyers by proximity, showing the closest options first.\n- **Appointment Booking**: Request appointments with lawyers, with an option to suggest a timestamp.\n- **Real-time Chat**: Communicate directly with lawyers via a secure, in-app WebSocket-based chat system to discuss appointment details or case intricacies.\n- **Document Management**: Upload images and documents relevant to a case into a consolidated repository.\n\n#### For Lawyers:\n\n- **Profile Management**: Register and manage a professional profile, including qualifications, location, and areas of specialization.\n- **Admin Verification**: Submit legal certification documents for verification by an administrator before the profile goes live, ensuring authenticity.\n- **Appointment Management**: View and manage incoming appointment requests from clients; confirm or reject them as per their schedule.\n- **Case Upgradation**: Seamlessly upgrade a confirmed appointment into a formal case, migrating the chat history and creating a dedicated case space.\n\n#### For Administrators:\n\n- **Comprehensive Dashboard**: A central dashboard to manage and monitor all platform activity.\n- **Lawyer Verification**: Review and verify the legal documents submitted by lawyers, with the ability to approve or reject applications.\n- **User Oversight**: View detailed lists of all registered clients and lawyers on the platform.\n- **Statistical Analysis**: Access graphical charts for statistical analysis of registered members and website visitors.\n\n## 🛠️ Technology Stack\n\nThe project is built with a modern, robust, and scalable tech stack.\n\n- **Frontend**:\n\n  - **Framework**: [Vue 3](https://vuejs.org/)\n  - **Language**: [TypeScript](https://www.typescriptlang.org/)\n  - **UI Library**: [Vuetify 3](https://vuetifyjs.com/en/) (with custom styling using [Sass](https://sass-lang.com/))\n  - **State Management**: [Pinia](https://pinia.vuejs.org/)\n\n- **Backend (Serverless Architecture)**:\n\n  - **Runtime**: [Node.js](https://nodejs.org/en)\n  - **Language**: [TypeScript](https://www.typescriptlang.org/)\n  - **Cloud Services**: [AWS Lambda](https://aws.amazon.com/lambda/) \u0026 [AWS API Gateway](https://aws.amazon.com/api-gateway/)\n  - **Infrastructure Provisioning**: [AWS CDK](https://aws.amazon.com/cdk/)\n\n- **Database**:\n\n  - **Relational**: [MariaDB](https://mariadb.org/) (for user profiles, cases, appointments)\n  - **NoSQL**: [AWS DynamoDB](https://aws.amazon.com/dynamodb/) (for real-time chat messages and WebSocket connection management)\n\n- **Deployment \u0026 Protocols**:\n\n  - **Frontend Hosting**: [Netlify](https://www.netlify.com/)\n  - **Communication**: HTTPS for client-server communication\n  - **Real-time Chat**: WebSocket over SSL/TLS (WSS) for real-time chatting\n\n## 📄 Project Report\n\nFor a complete and in-depth explanation of the project's design, architecture, data flow diagrams, and implementation details, please see the full [project report](./project_report.pdf).\n\n---\n\n### ⚠️ **Project Status: Inactive**\n\nPlease be aware that the live version of this project is **currently non-functional**.\n\nThe backend services were hosted on an **AWS Free Tier** account which has since expired. This affects all server-dependent functionalities, including:\n\n- User registration and authentication.\n- Database operations (fetching lawyer/client data, appointments, cases).\n- Real-time chat via WebSockets.\n- File uploads.\n\nThe frontend may still be viewable, but it will not be able to communicate with the backend. The code remains available in this repository for demonstration and review purposes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faryan-programmer%2Fjustice-firm-v2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faryan-programmer%2Fjustice-firm-v2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faryan-programmer%2Fjustice-firm-v2/lists"}