Skip to content

caitlinstanton/panoramic_falcons

Repository files navigation

panoramic_falcons

Working with Ms. Mahoney to make a peer tutoring managament system for ARISTA


What Does the Site Do?

Necessary Features

  • Allow for tutees to sign up for an account if they need help
  • Allow for tutors to sign up for an account if they need to earn credits
  • Ensure all accounts are from the same school based on initial school information inputted (email domain, school name, etc.)
  • Pair tutors and tutees RANDOMLY based on availability, classes, and teachers (in order to ensure there are no biased pairs and that the sessions are as helpful as possible)
  • Allow for tutors to check their credits for previous, current, and future crediting periods
  • Allow for administrators to edit the list of tutors, list of committee members (optional), credit requirements, and crediting periods
  • Allow for administrators to oversee unpaired tutee/tutor accounts, paired tutors/tutees, completed sessions, sessions with discrepancies, and user credits

Ideas

  • Put limit of amount of tutees a tutor can handle (3)
  • Automatic unpairing when tutees/tutors flake after a certain amount of times
  • Automatic emailing of tutees after a certain amount of time if they're still unapired
  • FAQ about peer tutoring, guidance counselor information, etc.
  • Automatically not credit a session if it's submitted more than a week, two weeks after the session
  • Check location of session
  • Facial recognition of selfie after completing session (each account would require a photo)
  • Get rid of grade-checking system for tutors
  • Tutee has to rank sessions (1-5) in order to ensure tutors are of high quality (only show this to school staff)
  • Leadership board for tutors with best ranking, most sessions, most committed, etc.
  • Incentives for tutoring in more-requested classes (geometry, biology, physics)
  • Internal notification system, phone contact information, display preferred method of communication

Optional Goals

  • Setting up a school

    First account made would establish the precedent for the rest of the accounts/functionality

    • Type of email for Google authentication
    • Name of school
    • Initial list of approved tutors and their emails
    • Initial credit requirements, number of crediting periods (ARISTA uses trimesters, but other schools may not), etc.
    • OPTIONAL: List of committee members and their emails, because they may have different credit requirements from general tutors
  • Connect to Naviance or other grading system

    This could be used to:

    • Verify tutor grades to ensure that they are able to tutor in certain subjects
    • Verify tutor's teachers that they had for certain classes to ensure that they can be effectively paired up with a tutee in that teacher's class
    • Check tutee grades to automatically notify them if they need help in a class and automatically update their settings to request a tutor in that subject -- UPDATE: NOT VIABLE
  • Connect to school mailing list

    This could be used to sign every student up automatically for an account, if they ever need help in a class


Signing In

  • Google authentication to ensure every user signs in with their stuy.edu emails
  • User inputs their personal/account information, including:
    • Name
    • Password
    • Additional email (optional)
    • Free periods/times
    • Classes (that they need help in, can tutor in)
    • ONLY IF A TUTOR: Grades in the classes that they wish to tutor in
    • Teachers for the classes they inputted
  • Every user is automatically programmed to be a tutee, because everyone needs help at some point!
  • A user account will only have tutor functionality if their email can be found on the inputted list of tutors
  • Account dashboard will allow for a smooth transition between tutee and tutor account functions (most likely done through a button/checkbox and D3 transitions)

Account Functions

General

  • Update account information
  • Update availability to tutor/be tutored
  • Update classes
  • Update teachers
  • Update grades (unless that can be pulled from Naviance--perhaps there can be a way to automatically sign everyone in a school up for an account, and then prompt them to get tutored for a class if their grade goes below a certain point [this would require automatic retrieval of data])

Tutee

  • Select a tutor (RANDOMLY, based on availability and classes)
  • Submit form at the complete of a session
  • Submit a form if there is a discrepancy between the information for a submitted session (time, date, etc.)

Tutor

  • Select a tutee (RANDOMLY, based on availability and classes)
  • Submit form at the complete of a session
  • Submit a form if there is a discrepancy between the information for a submitted session (time, date, etc.)
  • OPTIONAL: Notify tutee's teacher that sessions are occuring and update the teacher on their progress

Administrator

  • Add/remove members to/from the list of approved tutors
  • Add/remove members to/from the committees
  • Update the name/number of committees
  • Update the credit requirements (specific to each committee) and number of crediting periods
  • Check list of completed sessions (coloring of sessions could indicate if there is a discrepancy, etc.)
  • Check list of unpaired tutees/tutors and manually pair up people (not recommended, but a necessary function)
  • Send emails/notifications (to specific people, only tutors, only tutees)

School Staff

  • Be able to check which students have signed up for tutee accounts
  • See a list of paired and unpaired students
  • See a log of completed sessions

Flow of Site

  • Select tutor, tutee, administrator/school account, or to create a new account
  • Sign up/create account using Google

About

Flask based tutoring management system

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published