LianruiBruce/wrap

This is our capstone project in fall semester, 2024 in University of Utah. We use NLP and AI api to help user to understand the legal documents on the website.

85

stars

154

commits

JavaScript

primary language

Dec 6, 2024

updated

wrapcapstone.com

README

๐Ÿ” WRAP - Web-based Resource for Analyzing Papers

GitHub contributors GitHub stars GitHub forks MIT License Website

๐Ÿ“‹ Table of Contents

๐ŸŽฏ Overview

WRAP is a comprehensive legal document analysis system developed as a capstone project at the University of Utah. It combines a Chrome extension, web application, and NLP backend to automatically detect, analyze, and manage legal documents such as Terms and Conditions, Privacy Policies, and Contract Agreements.

๐Ÿ—๏ธ System Architecture

The system consists of three main components:

  1. Chrome Extension: Detects and captures legal documents from websites
  2. Web Application: Manages user interactions and document viewing
  3. NLP Backend: Processes and analyzes legal documents using advanced NLP techniques

โœจ Key Features

Chrome Extension

  • ๐Ÿ”„ Automatic legal document detection
  • ๐Ÿ“Š Immediate document analysis and reporting
  • ๐Ÿ’พ Automatic saving to database
  • ๐Ÿ“ค Manual document upload option
  • โš™๏ธ Customizable detection settings

Web Application

  • ๐Ÿ“ฑ Responsive Material-UI design
  • ๐Ÿ“Š Interactive data visualization
  • ๐Ÿ”„ Real-time updates using Socket.IO
  • ๐Ÿ“„ PDF generation and handling
  • ๐Ÿ” Advanced search functionality

NLP Backend

  • ๐Ÿค– CUDA-accelerated document processing
  • ๐Ÿ“ Automatic report generation
  • ๐ŸŽฏ Legal document classification
  • ๐Ÿ“Š Key information extraction
  • ๐Ÿ”„ Real-time processing capabilities

๐Ÿ’ป Technology Stack

Frontend

  • React.js with Material-UI
  • Chart.js & Recharts
  • Socket.IO Client
  • Axios

Backend

  • Node.js & Express
  • MongoDB with Mongoose
  • Socket.IO
  • JWT Authentication
  • PDF Processing Tools

NLP Stack

  • Python with CUDA support
  • PyTorch
  • Flask API
  • NVIDIA GPU Requirements

๐Ÿš€ Getting Started

Prerequisites

  • Node.js (Latest LTS version)
  • Python 3.8+
  • NVIDIA GPU with CUDA support
  • MongoDB
  • Chrome browser (for extension)

Installation

  1. Clone the repository
git clone https://github.com/LianruiBruce/wrap.git
cd wrap
  1. Set up the main backend
npm install
cp .env.example .env  # Configure your environment variables
npm start
  1. Set up the frontend
cd website_frontend
npm install
npm start
  1. Set up the NLP environment
cd NLP
python -m venv nlp-env
source nlp-env/bin/activate  # On Windows: nlp-env\Scripts\activate
pip install -r requirements.txt
  1. Start the Flask server
export FLASK_APP=src/app.py  # On Windows: $env:FLASK_APP = "src/app.py"
flask run --host=0.0.0.0 --port=5000

๐ŸŽฎ Usage

Chrome Extension

  1. Open the extension before visiting a webpage
  2. Navigate to a page with legal documents
  3. The extension will automatically detect and analyze the document
  4. View generated reports directly in the extension

Web Application

  1. Access the web interface at wrapcapstone.com
  2. Log in to your account
  3. View detected documents and generated reports
  4. Use the search functionality to find specific documents
  5. Generate and download PDF reports

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ‘ฅ Contributors

๐Ÿ“„ License

Distributed under the MIT License. See LICENSE for more information.

๐Ÿ“ž Contact

๐Ÿ™ Acknowledgments

  • University of Utah
  • Our project advisors and mentors
  • All contributors who helped with the project

Contributors

LianruiBruce

134 commits

Joeic

20 commits

Similar repos

Languages

JavaScript

75.3%

Python

10.1%

Jupyter Notebook

7.6%

HTML

4.2%

CSS

2.8%

LianruiBruce/wrap

This is our capstone project in fall semester, 2024 in University of Utah. We use NLP and AI api to help user to understand the legal documents on the website.

85

stars

154

commits

JavaScript

primary language

Dec 6, 2024

updated

wrapcapstone.com

README

๐Ÿ” WRAP - Web-based Resource for Analyzing Papers

GitHub contributors GitHub stars GitHub forks MIT License Website

๐Ÿ“‹ Table of Contents

๐ŸŽฏ Overview

WRAP is a comprehensive legal document analysis system developed as a capstone project at the University of Utah. It combines a Chrome extension, web application, and NLP backend to automatically detect, analyze, and manage legal documents such as Terms and Conditions, Privacy Policies, and Contract Agreements.

๐Ÿ—๏ธ System Architecture

The system consists of three main components:

  1. Chrome Extension: Detects and captures legal documents from websites
  2. Web Application: Manages user interactions and document viewing
  3. NLP Backend: Processes and analyzes legal documents using advanced NLP techniques

โœจ Key Features

Chrome Extension

  • ๐Ÿ”„ Automatic legal document detection
  • ๐Ÿ“Š Immediate document analysis and reporting
  • ๐Ÿ’พ Automatic saving to database
  • ๐Ÿ“ค Manual document upload option
  • โš™๏ธ Customizable detection settings

Web Application

  • ๐Ÿ“ฑ Responsive Material-UI design
  • ๐Ÿ“Š Interactive data visualization
  • ๐Ÿ”„ Real-time updates using Socket.IO
  • ๐Ÿ“„ PDF generation and handling
  • ๐Ÿ” Advanced search functionality

NLP Backend

  • ๐Ÿค– CUDA-accelerated document processing
  • ๐Ÿ“ Automatic report generation
  • ๐ŸŽฏ Legal document classification
  • ๐Ÿ“Š Key information extraction
  • ๐Ÿ”„ Real-time processing capabilities

๐Ÿ’ป Technology Stack

Frontend

  • React.js with Material-UI
  • Chart.js & Recharts
  • Socket.IO Client
  • Axios

Backend

  • Node.js & Express
  • MongoDB with Mongoose
  • Socket.IO
  • JWT Authentication
  • PDF Processing Tools

NLP Stack

  • Python with CUDA support
  • PyTorch
  • Flask API
  • NVIDIA GPU Requirements

๐Ÿš€ Getting Started

Prerequisites

  • Node.js (Latest LTS version)
  • Python 3.8+
  • NVIDIA GPU with CUDA support
  • MongoDB
  • Chrome browser (for extension)

Installation

  1. Clone the repository
git clone https://github.com/LianruiBruce/wrap.git
cd wrap
  1. Set up the main backend
npm install
cp .env.example .env  # Configure your environment variables
npm start
  1. Set up the frontend
cd website_frontend
npm install
npm start
  1. Set up the NLP environment
cd NLP
python -m venv nlp-env
source nlp-env/bin/activate  # On Windows: nlp-env\Scripts\activate
pip install -r requirements.txt
  1. Start the Flask server
export FLASK_APP=src/app.py  # On Windows: $env:FLASK_APP = "src/app.py"
flask run --host=0.0.0.0 --port=5000

๐ŸŽฎ Usage

Chrome Extension

  1. Open the extension before visiting a webpage
  2. Navigate to a page with legal documents
  3. The extension will automatically detect and analyze the document
  4. View generated reports directly in the extension

Web Application

  1. Access the web interface at wrapcapstone.com
  2. Log in to your account
  3. View detected documents and generated reports
  4. Use the search functionality to find specific documents
  5. Generate and download PDF reports

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ‘ฅ Contributors

๐Ÿ“„ License

Distributed under the MIT License. See LICENSE for more information.

๐Ÿ“ž Contact

๐Ÿ™ Acknowledgments

  • University of Utah
  • Our project advisors and mentors
  • All contributors who helped with the project

Similar repos

Contributors

LianruiBruce

134 commits

Joeic

20 commits

Languages

JavaScript

75.3%

Python

10.1%

Jupyter Notebook

7.6%

HTML

4.2%

CSS

2.8%