Skip to content

Tele-health web app that connects vets with pet owners

Notifications You must be signed in to change notification settings

kaavyalakshmanan/tele-vet

Repository files navigation

Tele-Vet

https://tele-vet.herokuapp.com/

Who we are:

Kaavya: R2Q7

  • Worked on:
    • Implemented user authentication
    • Created the login and registration pages
    • Incorporated JWS & Bcryptjs
    • Helped create user dashboard
    • Debugged many features/components
    • Kept team on track with deliverables during meetings
    • Took minutes during all meetings
    • Contributed to code refactoring and clean up
    • Helped deploy to Heroku

Amy: U5X9A

  • Worked on:
    • Google Maps API integration
    • Built the maps display component
    • Added markers with vet info and ratings
    • Pulled json data for local vets from Google maps API
    • Centered map to user location
    • Supported team with documentation and testing
    • Helped debug Heroku deployment
    • Wrote biweekly scrum reports
    • Set up the MongoDB database

Francois: J1H1B

  • Worked on:
    • Implemented the video conferencing components
    • Built the user/vet appointment booking system
    • Helped with the API, including the collection models
    • Defined the project using wireframes and flow maps
    • Designed the vet profile page

Nick: T9F2B

  • Worked on:
    • Created the user dashboard
    • Built landing page and refactored the vet profile page
    • Designed and wrote the redux/thunk state control flow
    • Assisted with implementing and debugging user authentication
    • Refactored maps to pull vet profiles from the database
    • Assisted in designing the user endpoints in the api

What our app does:

Tele-Vet is a virtual health care web-app that connects vets with their furry patients. A user can view vet profiles by location rating or by proximity to the user. Users can also upload relevant documents to their pet's care (images, text files, etc), book an appointment and video conference with a vet to get the care they need, even during a global pandemic.

Note for the grader:

There are two types of users in this app, veterinarians and pet owners.

Pet Owners:

This is pretty self-explanatory. Navigate to the log in page, create an account, and start editing your profile

Veterinarians:

Tele-Vet will not allow just anyone to register as a Vet. In reality Vets would need to apply to be part of the app and properly vetted before an account is created. That said, since this is a university project we created six mock vet profiles that the user can view form the find a vet page. These vet users can also log in and modify their profiles. To see this functionality follow the steps below:

  1. visit any vet profile page from the 'find vets in your area' page
  2. click on the login link in the "Your Clinic?" dropdown menu
  3. Enter any of the following username/password pairs:
    • username: "sok", password: "sok"
    • username: "nixit", password: "nixit"
    • username: "mirage", password: "mirage"
    • username: "dannadoug", password: "dannadoug"
    • username: "alexwWasHere", password: alexWasHere,
    • username: "oli", password: "oli"
  4. after logging in you are able to change the profile picture, add photos, and edit the vet's availability

What type of data we store on MongoDB:

We will store patient profile data: Pet Owners:

  • Name
  • Authetication info
  • Email address
  • Password
  • Images
  • Appointments
  • Message History
  • Documents

Vets:

  • Vet name
  • Clinic name
  • Clinic location & address
  • Uploaded images of the clinic or staff
  • Cover photo, profile picture, staff & pet pictures
  • Vet profiles
  • Email
  • Rating
  • Facebook & Twitter
  • Username
  • Some certificate proving the vet is real
  • Message history
  • Prescription history etc

What users cando with the data:

Pet owners can view vet clinics by location or profile. Within this, they can view ratings and contact information. Users can also upload images of their pets, and book an appointment with a vet.

Vets can upload images, fill out their availability for users to book, and start video conferencing.

Minimal Requirements

  • Database storage
  • User and vet accounts
  • External log-in manager
  • Search for vets by user's location
  • Google Maps API integration
  • Users can view a vet's availability

Standard Requirements

  • Upload images
  • Book an appointment with a vet
  • Vets can select their availability in their calendar
  • Video conferencing
  • Realtime messaging between patients and vets
  • Send and receive private messages, images, and docs to a message inbox
  • View message log history with vets
  • Receive a summary of the appointment from the vet
  • Send notes and prescriptions
  • View patient uploaded images
  • View existing patient files

Stretch Requirements

  • User authentication
  • Receive prescriptions from the vet that can be downloaded as a pdf for printing and collecting
  • Integrate booking with external calendars (google Cal, Outlook, Apple Cal)
  • Payment integration
  • Undergo a pre-screening using a chatbot to indicate the level of urgency and preliminary info
  • Vets can view preliminary info on patients from pre-screening

Tech from Units 1 - 5:

  1. HTML/CSS/JS: On frontend was built with React, we used the html, css, and Javascript from workshop 1 as a foundation for creating and styling our components. This workshop was primarily important in understanding how to style components. We primarily used React hooks to style, but this is very similar to traditional CSS.
  2. REACT/REDUX: This was one of the most important workshops for us. Our frontend is built with React and we use Redux to manage state. The three most important state objects are the current user, current vet, and the vet list.
  3. MongoDB: Tele-Vet uses a MongoDB Atlas cloud database to store pet owner and vet information. We have two collections. The vet collection stores a list of vet objects, each that represent a single vet that has "registered" for our service. Users can view these vets on the find a vet page. The user collection stores a list of user objects. Each user can log in, view vets and upload photos and documents about their pets.
  4. Node & Express: Our backend API is an express server written in Node. We use Thunk to make api calls and then use the api to communicate with our database.
  5. Release Engineering: Our App is deployed on Heroku at https://tele-vet.herokuapp.com/. Achieving this task required rafactoring our app directory structure and a fair amount of debugging.

Next steps:

There are two features that we would like to include in future iterations of Tele-Vet. Messaging is the big feature that we were not able to implement. It would serve as another channel for an authenticated vet to communicate with users.

The second feature we would like to add is the ability for a vet to be properly authenticated at login. We felt that having two types of authenticated users went a bit above and beyond the scope of this course and we are excited to add it in the next steps.

About

Tele-health web app that connects vets with pet owners

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published