Coder Social home page Coder Social logo

deeredge / traveler-discover-your-next-destination Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 2.0 265.65 MB

Traveler: Discover Your Next Destination is an application that displays filtered attractions through the use of 11 different filters.                                                Team Members: Thomas Lu, Vishwa Murugappan, and Dheeraj Vislawath [Hillcrest High School, Utah]

Python 97.73% CSS 2.27%
fbla-coding-and-programming fbla-nationals fbla fbla-nlc

traveler-discover-your-next-destination's Introduction

Traveler

Setup

For this project, PyCharm was used for the development of the application. To find the system requirements and installation process: https://www.jetbrains.com/help/pycharm/installation-guide.html

First up, the necessary libraries for the database its connection to the rest of the PyCharm project need to be installed. (Note: Only macOS and Windows platforms were used to develop this application. All libarary version testing and implementation corresponds to only these two platforms)

psycopg2 v2.8.6

pip install psycopg2

This library is used to connect PostgresSQL to the Python project. Over the course of the project, versions 2.8.6 and 2.9.1 were used. To find more about the library and its installation: https://pypi.org/project/psycopg2/

PostgresSQL v14.2

This library is used to hold all attraction data, and to dynamically store filtered attractions within this project. For this project only version 14.2 was tested and implemented. To find information about the library and the installation process: https://www.postgresql.org/download/

pgAdmin 5 v6.7

This application is used to manage Postgres databases. For this project only version 6.7 was tested and implemented. To find information about the library and the installation process: https://www.pgadmin.org/download/

Within pgAdmin 5, we can expand the folders until the Table folder is found. This is where our database table will be created to hold all of our attraction data. Navigating to the query editor we can paste the following code:

CREATE TABLE ATTRACTION
   (
    ID SERIAL PRIMARY KEY,
    NAME VARCHAR(200) NOT NULL,
    DESCRIPTION VARCHAR(2000) NOT NULL,
    STATE VARCHAR(50) NOT NULL,
    CITY VARCHAR(50) NOT NULL,
    TYPE VARCHAR(50) NOT NULL,
    PRICE_LEVEL INTEGER,
    TRAFFIC_LEVEL INTEGER,
    RATING NUMERIC(2,1),
    WHEELCHAIR_ACCESSIBILITY BOOLEAN,
    FAMILY_FRIENDLY BOOLEAN,
    PET_FRIENDLY BOOLEAN,
    WEBSITE VARCHAR(500),
    LATITUDE NUMERIC(11,8),
	LONGITUDE NUMERIC(11,8),
	IMAGE_LINK_SRC VARCHAR(50000) 
    );

CREATE INDEX IDX_STATE ON ATTRACTION (STATE);
CREATE INDEX IDX_CITY ON ATTRACTION (CITY);
CREATE INDEX IDX_TYPE ON ATTRACTION (TYPE);
CREATE INDEX IDX_RATING ON ATTRACTION (RATING);
CREATE INDEX IDX_PRICE_LEVEL ON ATTRACTION (PRICE_LEVEL);
CREATE INDEX IDX_TRAFFIC_LEVEL ON ATTRACTION (TRAFFIC_LEVEL);
CREATE INDEX IDX_WC_ACCESSIBILITY ON ATTRACTION (WHEELCHAIR_ACCESSIBILITY);
CREATE INDEX IDX_FAMILY_FRIENDLY  ON ATTRACTION (FAMILY_FRIENDLY );
CREATE INDEX IDX_PET_FRIENDLY ON ATTRACTION (PET_FRIENDLY);
ALTER TABLE ATTRACTION ADD CONSTRAINT CHK_RATING CHECK (RATING >= 0 AND RATING <= 5)

Highlighting everything and clicking the run button in the menu bar (triangle shaped), a database table is created. Within this database table, all the necessary attraction attribute columns are added. Now all that needs to be done is to load all the atttraction data. Download the file containing all of the attraction data in our data csv project file: [Attraction Data.csv](https://github.com/DeerEdge/2022-FBLA-Nationals-Coding-and-Programming/blob/main/Attractions Data.csv).

Attractions were classfied into categories (i.e. outdoor, cultural, food) using NLP and text processing techniques based on their descriptions provided by google maps or the attractions' own websites.

traveler-discover-your-next-destination's People

Contributors

deeredge avatar thomaslu678 avatar vishmur avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.