fhsu-csci441-team-a / myTrafficWizard

Repo to house code for the myTrafficWizard app
0 stars 0 forks source link

MyTrafficWizard

MyTrafficWizard is a web-based application designed to provide users with real-time traffic and weather updates for their planned trips. Users can submit trip details, including departure and destination addresses, and choose their preferred notification channels such as email, SMS, Slack, or Discord. The application then sends timely alerts to users about traffic conditions, estimated travel times, incidents along the route, and weather forecasts.

Features

Architecture Overview

MyTrafficWizard follows an extended MVC design pattern, consisting of the following main subsystems:

Installation

  1. Clone the repository: git clone https://github.com/your-username/my-traffic-wizard.git
  2. Navigate to the project directory: cd my-traffic-wizard
  3. Install dependencies: npm install
  4. Set up environment variables such as API keys for TomTom, Gmail, Slack, Discord, etc.
  5. Set up a database for the application to use, and retrieve the necessary URL to access it.

Usage

Local Development

  1. Start the application: npm start
  2. Access the application via your web browser at http://localhost:3000
  3. Submit trip details and choose notification preferences.
  4. Receive real-time traffic and weather updates for your planned trips.

Live Website

Visit the live website hosted on Render to use the application without setting it up locally. Please note, though, that the Render App sleeps after a period of inactivity. If not used recently, it may take a minute or two to load. Please be patient while the Render App wakes up.

Creating Trip Alert Requests

To create a trip alert request:

Multi-Channel Notifications

My Traffic Wizard supports notifications through multiple channels including:

You can select one or multiple channels for receiving notifications.

License

All Rights Reserved © Nicole-Rene Newcomb, Tyler Anderson, Philip Baldwin, and Jacob Spalding

Credits