Skip to content

Marcellus97/locationmatchmaker

Repository files navigation

DVA Project - Team 019

https://locationmatchmaker.com

Link to github repo https://github.gatech.edu/snima3/dva-Project

Overview

Location Matchmaker is web visualization tool to assist you in finding a new place to live. The tool is connected with rich datasets to be a one-stop-shop for location research. It is highly customizable, and displays data at the county level for all 50 US states.

This project is a Python-based web application that uses gunicorn as the WSGI HTTP server and gevent for asynchronous workers. The application is containerized using Docker, making it easy to deploy and run in any environment. The app listens on port 8080 and is defined in the api:app module. The visualization is powered by d3.js and bootstrap for styling.

Demo

See this Youtube video to view it in action!

Prerequisites

Install Python

Download and install the latest version of Python from the official website:

https://www.python.org/downloads/

Make sure to check the box "Add Python to PATH" during installation.

To confirm installation, run:

python --version

or

python3 --version

Create a Virtual Environment

Navigate to your project directory and run:

python -m venv venv

or

python3 -m venv venv

Activate the virtual environment:

  • Windows:

    venv\Scripts\activate
  • macOS/Linux:

    source venv/bin/activate

You’ll know the virtual environment is active when you see (venv) in your terminal prompt.

Install Dependencies

With the virtual environment activated, install the required packages:

pip install -r requirements.txt

Before running the project, ensure you have Docker and Docker Compose installed on your system. You can find installation instructions for your operating system below:

Running the Project

Follow the steps below to build and run the project using Docker Compose.

Windows

  1. Open a terminal (e.g., Command Prompt, PowerShell, or Windows Terminal).
  2. Navigate to the project directory:
    cd path\to\dva-Project
  3. Run the following command to build and start the containers:
    docker compose up --build
  4. Access the application in your browser at http://localhost:8080.

Mac

  1. Open a terminal.
  2. Navigate to the project directory:
    cd /path/to/dva-Project
  3. Run the following command to build and start the containers:
    docker compose up --build
  4. Access the application in your browser at http://localhost:8080.

Linux

  1. Open a terminal.
  2. Navigate to the project directory:
    cd /path/to/dva-Project
  3. Run the following command to build and start the containers:
    docker compose up --build
  4. Access the application in your browser at http://localhost:8080.

Project Structure

  • dockerfile: Defines the Docker image for the application.
  • docker-compose.yml: Configures the services, ports, and environment variables for the application.
  • requirements.txt: Lists the Python dependencies for the project.
  • Application Code: The Python application code is located in the project directory.

Notes

  • The application uses live updates by mounting the project directory as a volume in the container. Any changes to the code will reflect immediately without restarting the container.
  • If you want to run the container interactively for debugging, uncomment the tty: true and stdin_open: true lines in the docker-compose.yml file.

Troubleshooting

  • If you encounter permission issues on Linux, try running the commands with sudo.
  • Ensure that port 8080 is not being used by another application on your system.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors