Hi, It's Temur

I'm a
Contact Me

TutorMe – Peer Tutoring Platform

What is my project all about?

TutorMe is a full-stack peer tutoring platform built to reduce delays in getting academic support and make it easier for students to help each other while earning points through completed tutoring sessions. The system allows students to create profiles, connect with peers, publish studying related posts, send messages, schedule meetings and earn points.

The platform was implemented using the MERN stack with MongoDB for data storage, Express.js and Node.js for the backend API and React for the frontend. Live communication is supported through Socket.io for instant message delivery between connected users.

Authentication is handled through JSON Web Tokens with both email/password login and Google OAuth 2.0. The system also includes meeting scheduling with validation rules, a rating and points mechanism to encourage engagement and an administrative dashboard to moderate content posted within the platform.

TutorMe was deployed using Docker for containerisation and hosted on AWS EC2, with static assets and media stored in AWS S3. A GitHub Actions CI/CD pipeline was configured to automate testing and deployment on every push. Testing was carried out using Jest for unit and integration tests and Playwright for E2E testing across the application.

The project provides students with an interactive and engaging environment for academic collaboration with the aim of improving academic performance, increasing motivation through gamification and promoting a supportive culture within the university.

Tech Stack & Tools

MongoDB Node.js Express.js React Socket.io JWT OAuth 2.0 Docker AWS EC2 AWS S3 GitHub Actions Playwright Jest

Core Features implemented in TutorMe

What makes my project valuable?

Posts and Academic Interaction

Students can create study related posts, interact through comments, and use the feed as a central space for academic collaboration. From there, they can connect with peers, start conversations, and arrange tutoring sessions.

Live Messaging

Connected users can exchange messages instantly with the help of Socket.io, while conversations and messages are stored persistently in the database.

Meeting Scheduling

Users can schedule tutoring sessions with peers, while backend validation prevents invalid bookings, duplicate meetings and overlapping sessions to make sure that the points awarding system remains fair for all users on the platform.

Rating and Points System

Completed tutoring sessions can be rated and points are transferred based on session outcomes to encourage active participation and engagement among students.

Admin Moderation

The system provides an administrative dashboard for content moderation within the platform. Users can report inappropriate feed content, offensive messages and suspicious user activity to help ensure that platform content remains in line with university policies.

Documentation

What documentation was produced throughout the different stages of my project’s development ?

Research Report

Presents the background research carried out during the early stage of the project including student engagement and the technologies considered for development.

View Research Report

Project Specification

Sets out the proposed system design, architecture, tools, core features and planned development milestones for TutorMe Platform.

View Documentation

Final Report

Provides a comprehensive documentation of the final system, implementation, testing results and limitations of TutorMe.

View Final Report

Showcase

Explore the core features implemented in TutorMe

Landing Page and Authentication

The platform allows students to register with email and password, sign in using Google OAuth 2.0, and access the system through a simple and clear entry point.

Post Feed

The feed acts as a central space for academic interaction, where students can create posts about the academic difficulties they are facing and other students can respond by commenting and offering their support.

User Profiles

Each profile presents student information, outlining subject expertise, peer connections, recent activity and feedback received from completed tutoring sessions.

Messaging

Connected users can exchange messages instantly, making it easier to discuss study needs and organise tutoring support.

Meetings and Ratings

Students can schedule tutoring sessions, manage upcoming meetings and rate completed sessions through the platform.

Admin Dashboard

The administration area supports moderation by allowing reports, users, and platform activity to be monitored and managed in one place.

Let's Stay Connected!