Skip to content

rieljasperapos/Itinero

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

227 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Itinero

What is Itinero?

Itinero is a fully fleshed-out travel itinerary planner. Itinero is capable of the following features:

  • Itineraries and Activities: Users can create and modify itineraries and activities (e.g. notes, destinations).
  • Collaboration: Users are able to collaborate across itineraries, provided they are invited.
  • Notifications: Users will be notified on this page whether they are invited as a collaborator or viewer for an itinerary.
  • Map Integration: to visualize addresses of activities.

Deployed Website

For the fully deployed website, click here or paste this into your browser's URL:

https://travel-itinero.vercel.app/

If you are having issues with the website, please try and use another browser.

Installation

Follow these steps to get a local copy of Itinero up and running:

Table of Contents

Prerequisites

Ensure that you have the following installed:

Backend Setup and Database Setup

  1. Clone the repository:

    git clone https://github.com/rieljasperapos/Itinero.git
    
  2. Navigate to the backend directory:

    cd server
    
  3. Install the dependencies:

    npm install
    
  4. Set up environment variables by copying the .env.example file to .env:

    cp .env.example .env
    

    Then, open the newly created .env file and update the following variables as needed. Do NOT edit nor USE the .env.example file.

  5. Set up the database:

  6. Run Prisma migrations to set up the database schema:

    npx prisma migrate dev
    
  7. Generate the Prisma Client to ensure it reflects your database schema:

    npx prisma generate
    
  8. Start the server:

    npm run dev
    

Frontend Setup

  1. Navigate to the client directory:

    cd client
    
  2. Install the dependencies:

    npm install
    
  3. Set up environment variables by copying the .env.example file to .env.local:

    cp .env.example .env.local
    

    Then, open the newly created .env.local. file and update the following variables as needed:

    • AUTH_SECRET: Your secret key for authentication.

    • NEXT_PUBLIC_API_BASE_URL: This is your server URL that will be used as the base for all API requests.

    • NEXT_PUBLIC_GEOCODER_KEY: Your Geocoder API key.

  4. To obtain your Geocoder API key:

    • Visit opencagedata.com and create an account.
    • After registering, navigate to the dashboard to generate your API key.
    • Copy the generated API key and paste it into the NEXT_PUBLIC_GEOCODER_KEY field in your .env.local file.
  5. Start the development server:

    npm run dev
    

Troubleshooting

  • If you encounter issues with database connections, ensure that PostgreSQL is running and that your connection string is correct.
  • For any errors related to Prisma migrations, check your schema for any inconsistencies.
  • For any issues navigating the website, try to use another browser (e.g. Edge, Firefox, Chrome)

About

CS 3105 Application Development Final Project - Travel itinerary planner

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors