Skip to content

A travel website that allows users to research cities and discover top sights and restaurants. Users can sign up, save unique trips, and share trips with friends.

License

Notifications You must be signed in to change notification settings

engrebecca/XPLORE

Repository files navigation

alttext

Xplore

Description

Xplore was created to eliminate multiple browser tabs, excel spreadsheets, or handwritten notes for trip planning. With Xplore you can find all the information you need in one location to plan your trip. As an Xplorer you will be able to easily select from one of our cities which will populate you with the top restaurants and sights in the area and a place plan your trip. Xplore wants our Xplorers to spend less time searching and more time exploring.

Table of Contents

Features

  • MySQL database with one to many, many to one, and many to many relationships
  • Materialize is a modern responsive front-end framework based on Material Design
  • Handlebars is used to dynamically create HTML to render the page view
    • Each time the page is refreshed by a request or the user, HTML is dynamically rendered based on a response from the database/server
  • Model View Controller(MVC) design pattern is used to organize code
    • Model - contains a model for the user, city, index, restaurnts, sights, and trips ORM
    • View - contains HTML files that utlize Handlebars
    • Controller - contains routes for GET and POST requests to get data from the database, add data to the database, and update the database

Built With

  • Handlebars - a semantic templating framework for JavaScript and HTML
  • Materialize - a modern front-end framework for responsiveness
  • Animate CSS - a library of ready-to-use animations for CSS
  • Express - a back-end web application framework for Node.js
  • MySQL - a relational database management system
  • Sequelize - a promise-based Node.js ORM for MySQL and other databases
  • Sequelize CLI - Node.js package for interfacing with Sequelie from the command line
  • Node.js - a JavaScript runtime environment that allows JavaScript to be run in command line
  • JavaScript - code that creates the logic and structure of the program
  • Heroku - a cloud platform for deploying web applications
  • JawsDB - database service for deploying in Heroku
  • Git - version control system to track changes in source code
  • GitHub - hosts repository and deploys page on GitHub

Deployed Link

Xplore - Xplore

Database

  • The database is comprised of seven models with one-to-many, many-to-one, and many-to-many relationships. Models Diagram

Code

  • City Controller API routes. One GET route for querying all cities from the database. Another GET route for querying specific cities and their respective restaurants and sights. City Controller

  • Trip Controller API route. GET route for querying all trips from the database and retrieving associated user, city, restaurants, and sights. Trip Controller

  • Trip Controller API route. GET route with two for loops to add sights and restaurants to a trip Trip Controller

  • Seeder file to populate the database with information for users, cities, sights, restaurants, and trips Seeders

Credits

Authors

License

License: MIT MIT License Copyright (c) [2020] [Rebecca Eng, Kelly Stone, Andrew Kosel] Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

A travel website that allows users to research cities and discover top sights and restaurants. Users can sign up, save unique trips, and share trips with friends.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •