Skip to content

A collaborative trip-planning web app that lets users create, manage, and organize trips with friends and family, complete with destinations, budgets, dates, and entertainment options

License

Notifications You must be signed in to change notification settings

samir-s-hassan/OnTheFly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OnTheFly

✈️ On the Fly is a user-friendly web application designed to simplify group travel planning, whether you're organizing a bachelor party, a graduation tour, or a cross-country road trip. The app allows users to create new trips, add destinations with detailed plans, and securely save their itineraries through GitHub OAuth. With features like personalized profiles, collaborative tools to include friends in trip planning, and permissions ensuring only participants can access trip details, On the Fly makes planning seamless. Built with a fullstack architecture and hosted on Railway, it offers real-time updates and a responsive interface to help users manage their schedules and budgets effortlessly.

Required Features

The following required functionality is completed:

  • Users can view all active trips.
  • Users can create, view, update, and delete a trip.
  • Users can assign a cost, date, and description to a trip.
  • Users can choose from a list of available destinations to assign to a trip.
  • Users can view all trips associated with a given destination.
  • Users can view a trip's budget, description, date, and entertainment options.
  • Users can upvote entertainment options to help the group decide the destination.

The following optional features are implemented:

  • User can add photos and videos to trips.
  • User can add comments to trips.
  • User can search for trips by destination.
  • User can filter trips by budget, date, and other criteria.

How to run

  1. Open two tabs on your terminal
  2. Both tabs should have you starting at the root of this project repository
  3. Run "cd client" on one terminal tab and "cd server" on the other terminal tab
  4. Run "npm install" to make sure you have all the necessary dependencies/packages
  5. Now that you have the client and server directories open on different tabs, run "npm install" within each tab to make sure you have all the necessary dependencies for the client and the server
  6. Run "npm start" on the server-side and this will get our server started on a port!
  7. Run "npm run build" and then "npm run dev" on the client-side and this will get our client started on a port
  8. This project has been configured such that the client is already requesting for data from to the port the server started on
  9. Click on the link present in your client terminal to open your front-end
  10. Enjoy your app!

License

Copyright 2024 Samir Hassan

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

A collaborative trip-planning web app that lets users create, manage, and organize trips with friends and family, complete with destinations, budgets, dates, and entertainment options

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published