Skip to content

HazelHilbert/Legislative-Drafting-NLP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

361 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

drawing

📜 NLP for Legislative Drafting

The NLP for Legislative Drafting application is a full stack Microsoft Word Add-in that simplifies the process of legislative drafting. It allows users to search for, summarize, and extract legal citations and effective dates from a vast repository of American laws. It accomplishes this through the use of several advanced Natural Language Processing (NLP) models, including the OpenAI API, as well as a specifically trained Hugging Face NLP model. This project is a collaboration between Trinity College Dublin's School of Computer Science and Statistics and Propylon, a Dublin-based company specializing in software solutions for the legal sector. Watch our promo video:

👩‍💻 The Team 👨‍💻

Our team is made up of a mix of second and third-year students studying computer science at Trinity College Dublin. The third-year students were in charge of project management, while second-year students focused on development.

The 3rd Years

Hazel Hilbert - Team Leader

Ralf Duli - Sprint Master

Muavia Ghazi - Product Owner

Sean Kavanagh - Backend Lead

Tom Gilbride - Frontend Lead

Isioma Anonyai - Social Media Lead

drawing

The 2nd Years

James Bradley - Backend Developer

Jason Qu - Backend Developer

Aaron Groome - NLP Developer

Elizabeth O’Sullivan - NLP Developer

David Rosca - Frontend Developer

drawing

The Mentors

Special thanks to our clients from Propylon: Brendan Salmond, Akshay Sayar, Johan du Plessis, and Paul Higgins, along with our demonstrator Nicky Gray for their help and guidance.

👥 Find Out More

Take a look at our Digital Brochure or Project Poster to find out more about our team. You can also follow our social media pages:

Instagram LinkedIn

💻 Running the Application

🔑 Adding API keys to the .env file:

To set up your environment variables, copy .env.example to a new file named .env and replace insert_your_key_here with your actual API keys.

cp .env.example .env

🐳 Running the application using Docker:

To run the application using Docker, please ensure that Docker Desktop (download here) is running on your machine. You can now run the application using docker-compose:

docker-compose up --build

📂 Running the application using a venv:

Setting up the virtual environment:

For macOS and Linux:

python3 -m venv venv
source venv/bin/activate

For Windows:

python -m venv venv
.\venv\bin\activate.ps1

Install the Requirements:

With the virtual environment activated, install the project dependencies using:

pip install -r backend/requirements.txt

make sure you have python and pip installed first

Run Flask

To start the Flask application:

cd backend
flask --app app run

Run React

Make sure that you have installed npm. You can use the following command to do so:

cd frontend_nlp_react
npm install

To start the frontend:

cd frontend_nlp_react
npm start

About

A Microsoft Word add-in working in conjunction with a NLP model to aid in legislative drafting

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors