Skip to content

Trip Tales: Enter destinations, get activity tips powered by OpenAI. Built with HTML, CSS, JS, Express.js, Bootstrap, and EJS. User management, trip creation, editing, and deletion. APIs for user, trip, session management. Evolve your knowledge with Trip Tales.

License

Notifications You must be signed in to change notification settings

NikhilMahashabde/TripTales

Repository files navigation

Trip Tales

Trip Tales is a web application that allows users to design their travel journeys by entering destinations. The application leverages OpenAI to provide three activity tips for each destination, helping users plan and find inspiration for their trips.

This project initially started as a planner app but has currently been focused on being a trip creation tool with a growing scope. The ultimate goal is to evolve into a comprehensive travel planner app with AI support.

Features

  • User-friendly interface: The front end of Trip Tales is built using standard HTML, CSS, and JavaScript, with Bootstrap and EJS templates for improved UI display.
  • User management: Users can sign up and log in to Trip Tales. The back end, built with Express.js, utilizes sessions for session management and offers features like sign in, sign up, and OAuth login/signup.
  • Trip creation and management: Once logged in, users can create, edit, or delete trips. By entering destinations, users receive three activity tips generated by OpenAI for each destination.

Usage

To use Trip Tales, follow the steps below:

  1. Create a Profile: Users need to create a profile on the app or log in using their OAuth2 Google/GitHub accounts.
  2. Create a Trip: Once logged in, users can create a trip by entering the dates they wish to travel and adding a list of destinations. Submit the trip to save it.
  3. Explore Home Page: The home page will display a list of trips associated with each location. Users can view, edit, or delete the trip from this menu.

Please note that some features may be available only to authenticated users.

API

Trip Tales provides the following APIs:

  • /login: POST request to authenticate a user.
  • /logout: POST request to log out a user.
  • /: GET request to the home page. The content rendered depends on whether the user is logged in or not.
  • /api/users: GET request to retrieve a list of all users.
  • /api/trips:
    • GET request to retrieve a list of trips associated with the user's account.
    • POST request to add a trip to the database associated with the user.
    • PUT request to update a trip associated with the user.
    • DELETE request to delete a trip with the provided ID.
  • /api/sessions:
    • GET request to verify the session and retrieve user data associated with it. Can be used to secure routes.
    • POST request to register a user and add session data.

Please refer to the API documentation for detailed information on each endpoint, including request formats and responses.

Dependencies

Trip Tales is built using the following technologies and frameworks:

  • Express.js: version "^4.18.2"
  • Express sessions: version "^1.17.3"
  • Bootstrap: version 5.2.3
  • OpenAI
  • Mongoose
  • MongoDB: version 5.6

Please ensure you have these dependencies installed before running Trip Tales.

For any questions, issues, or support related to Trip Tales, please contact us

Feel free to modify or enhance this README file to suit the specific needs of your project.

About

Trip Tales: Enter destinations, get activity tips powered by OpenAI. Built with HTML, CSS, JS, Express.js, Bootstrap, and EJS. User management, trip creation, editing, and deletion. APIs for user, trip, session management. Evolve your knowledge with Trip Tales.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published