Coder Social home page Coder Social logo

travel-gold-backend's Introduction

Travel Gold - Backend

Screenshot 2024-01-19 at 10 39 23 PM

Front-end / Back-end Deployment links

https://peaceful-pasca-8105c8.netlify.app/

https://github.com/charlie-bedell/travel-gold-backend

Getting started:

Account Creation: Begin your journey by creating a personalized account on Travel Gold. This simple and secure process ensures that you have a unique space to curate your travel experiences.

Search Itinerary: Once you've successfully logged in, you'll be directed to our intuitive search itinerary page. Here, input the dates of your upcoming travel, and get ready to embark on a hassle-free planning adventure.

Create Itinerary: Hit the "Search" button, and voila! You'll be redirected to our user-friendly "Create Itinerary" page. This is where the magic happens. Explore a world of possibilities as you search for places of interest to add to your itinerary. Once you click on "Add to place of interest" on the map of your desired location, this will add your itinerary.

My Itineraries: In "My itineraries" you will be able to view all the itineraries that you have created once you click on the link in your list!

Contributors:

Attributions:

  • Heroku

Back-end

  • Express
  • CORS
  • JSON
  • JSON Web Token
  • Bcrypt
  • Google Maps SDK/API

ERD

Screenshot 2024-01-19 at 10 39 23 PM

Routes

Route Action API Endpoint Purpose Name
GET / Mainpage Route that loads in the main page Index
POST /signup Signup Route to signup, sends user input to the user schema which produces a unique id, hashes the password, and creates a profile for the user Create
POST /login Login Route to login, sends user inputted username/password to the backend, then uses that login information to match to any existing profile Verify
DELETE /user Delete Profile Route to delete profile Delete
GET /itineraries Fetch Itineraries Route that fetches the user's saved itineraries Show
GET /itineraries/:itinerary_id Fetch Specific Itinerary Route that fetches a specific itinerary and populates the itinerary with places of interest Show
POST /itineraries Create Itinerary Route that creates a new itinerary for the user Save
PUT /itineraries/:itinerary_id Update Itinerary Route for when a user updates their itinerary Edit
DELETE /itineraries/:itinerary_id Delete Itinerary Route for when a user deletes a portion or their entire itinerary Delete
GET /:itinerary_id/poi/:place_id Fetch POI Route that sends a place id to the server and checks if it's in the POI table. If not, it fetches from the Google API, sends to the table, and returns it Fetch
DELETE /:itinerary_id/poi/:place_id Delete POI Route that deletes a POI from the itinerary Delete
GET /nearbySearch/ Nearby Search Route that connects to the Google Maps API Fetch

BACKEND Time-line

Day Tasks
Monday - Authentication in REPO
- 50% Authentication set-up
Tuesday - Finish Authentication
- 50% Routes done
Wednesday - 50% Controllers
- Deploy
- Have all data models done
- 50% Routes done
Thursday - Finish remaining 50% of Controllers
Friday - Clean up
Saturday/Sunday - Testing and debugging

MVP

  • User should be able to create an account on travel gold (salted password)
  • User should be able to login to their account on travel gold
  • User should be able to save an itinerary they created for later
  • POI (points of interest) Collection

Next-Step

  • Implement a share feature
  • Explore other users itineraries
  • I want the user to see a budget for the itinerary they have built
  • User be able to browse AirBnBs in the location they want to visit
  • A user to get suggestions for activities based on seasonality

Resources:

travel-gold-backend's People

Contributors

charlie-bedell avatar kevelaz avatar davidstinson avatar manliestben avatar emresurmeli avatar aldianahot14 avatar shyan-spec avatar

Stargazers

 avatar

Watchers

 avatar  avatar  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.