[Toot]
Invalid Date
Building a database-driven tutor finding application
In my 2nd year at the University of Waterloo, I took a course focused on database theory and design, which was a big leap for someone whos primary database experience was calling .filter on mongoDB. For the optional course project, me and my group decided to build a little something we call “Toot”.
Toot is a full-stack web application designed to match students with course tutors tailored to the student’s needs - in a more facebook marcetplace-y way as opposed to a tinder way. Its secondary goal is to farm high grades in CS348 by demonstrating many features of relational databases and PostgreSQL. It accomplishes both of these goals to some degree of satisfaction.
Tech Stack
Toot is built off the following tools:
- PostgreSQL. The project is built to demonstrate ways to apply SQL; Postgres offers a modern library ecosystem and is one of the most up-to-date options.
- React/NextJS. None of us were super experienced front-end developers; React is almost a default choice, with the side effect that AI tools are damn great at writing react code.
- Flask. Flask is simple to use.
- docker-compose, to orchestrate all the containers and troll Fedora users (me).
Features
Let’s say you’re failing miserably at some course, called HUGE 123. You panick as you are the only person taking the class this semester, don’t know anyone else who has, and your prof is a biblically accurate angel who has assigned you 5 assignments this week.
If only you hand some handy application that lets you find a perfect tutor. Wonder if they make those anywhere.
Here’s the front page of Toot:
Here’s the rest of the features of Toot:
- Sign up as a student or tooter. Students get ‘tooted on by the Tooters. (Ahem, the Students get taught by the Tooters.)
- As a Tooter, you can make postings to advertise your tooting abilities. You can add courses to your profile, add timeslots for your availability, create chats with your students, and create postings to advertise your tootoring services.
- As a student, you can find tutors using the postings browser. The search feature allows for partial matching of any text field. There is also a map search tool that allows limiting the search to some geographic area.
- Tooters and students can interact through the chat feature and schedule meetings with each other. Students can also leave great reviews about the Tooters as teachers and as people.