Skip to content

The project is designed to help individuals evaluate and rank cities to determine the ease and suitability of relocating

Notifications You must be signed in to change notification settings

IlyaChvanov/City-Relocation-Ranking-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

City Relocation Ranking System

Project Overview

The City Relocation Ranking System is designed to help individuals evaluate and rank cities based on various metrics to determine the ease and suitability of relocating. This project gathers and processes data on key factors such as quality of life, climate, and language difficulty to provide an objective ranking of cities for potential movers. A user writes the city he wants to know about and gets marks from 1 to 10 which show how good this city is. The result will be saved in DB and will be used in ranking with following cities.

Features

  • Pattern: The cities are created using the builder pattern;
  • Metrics Collection: Aggregates data on quality of life, climate conditions, and language difficulty.
  • City Ranking: Sorts cities based on the difficulty of relocating, integrating the collected metrics into a comprehensive score.
  • Data Storage and Management: Utilizes a PostgreSQL database for storing and managing collected data.
  • HTTP Requests: Employs curl libraries for making HTTP requests to various APIs for data collection.
  • JSON Parsing: Uses nlohmann/json for handling and parsing JSON data.
  • Testing: Incorporates Google Test for unit testing to ensure code reliability.
  • Code Style: https://google.github.io/styleguide/cppguide.html

Technologies Used

  • pqxx: C++ library for interacting with PostgreSQL databases.
  • curl: HTTPS requests and handling.
  • nlohmann/json: A JSON library for C++ used for parsing and manipulating JSON data.
  • Google Test: A testing framework for C++ used to create and run unit tests.
  • Flask: A python framework for api handling

Installation

Dependencies

PostgreSQL and curl must be installed in your PC and you must change pathes to dirs in CMakeLists.txt(str 6-7)

Build Instructions

  1. Clone the repository:

    git clone https://github.com/yourusername/relocation-ranking-system.git
  2. Build

  3. Run City Relocation Ranking System

Structure

About

The project is designed to help individuals evaluate and rank cities to determine the ease and suitability of relocating

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published