All projects

SOFTWARE / UCT · CSC3003S · Collaborative / 2024

Connecting students with tutors

A collaborative React Native application connecting identity, tutor discovery and session workflows through Firebase-backed services.

React NativeExpoFirebase

UCT / COURSE CONTEXT / 2024

CSC3003S · Computer Science 3003

Advanced software design, algorithm analysis and limits of computation.

Science handbook · 2024

ENGINEERING PERSPECTIVE

Inside the work

Connect identity, role-specific navigation and persistent records into a mobile tutoring workflow. The interesting engineering work is the integration between screens and services, not just the number of screens.

React Native / Expo
Mobile UI structure and application tooling.
React Navigation / Firebase
Student/tutor screen flows plus Authentication, Firestore and Storage integrations present in source.
STEP 1 / 3

Enter a role

Sign-in and registration lead into student/tutor profile flows.

Source-derived walkthrough

What it is

TuToR is a group capstone application for students and tutors in the UCT network, bringing discovery, profiles, meeting/session screens and feedback into a mobile workflow.

Why it was built

A collaborative capstone aimed at bringing tutor discovery and student/tutor session workflows into one mobile application.

My contribution

Local Git history records 40 commits under Azhar. Reviewed path history supports contributions to AppNavigator, sign-in/registration, chat, meeting details and profile/transcript screens. Teammates also edited overlapping modules; exclusive feature ownership is not claimed.

How it works

React Navigation connects student/tutor screen flows. Firebase Authentication, Firestore and Storage provide authentication and persistence. Source includes wallet and transcript-upload screens.

  1. 01Registration
  2. 02Student / tutor profile
  3. 03Tutor discovery
  4. 04Session workflow
  5. 05Ratings / feedback

Technical implementation

  • React Native 0.74 and Expo 51 provide the mobile application structure; React Navigation links the student and tutor flows.
  • Firebase Authentication, Firestore and Storage appear in the source. Portfolio cleanup replaces deployed configuration with empty environment-based examples.
  • The application includes profiles, tutor discovery, session screens, review/feedback, transcript upload and prototype wallet screens.
  • Twenty-nine JavaScript/JSX sources parsed successfully during cleanup. This is not an end-to-end Firebase verification.

Results & evidence

  • A substantial React Native/Expo application is present in source.
  • Portfolio cleanup replaces deployed Firebase identifiers with environment-based setup.

Engineering challenges

Navigation, identity, persistence and role-specific screens must agree. Shared work requires both technical integration and honest attribution.

Scope & limitations

Collaborative source remains private pending team republishing permission. End-to-end operation requires a new Firebase project and reviewed rules. Wallet UI is not evidence of production payment processing.

What I learned

Mobile workflow integration and team-based application development across authentication, UI and persistence.

What I would improve now

Review Firebase rules, remove prototype contacts, test complete role flows and validate upload/payment scope. Team republishing permission is required before releasing the shared source.

NEXT PROJECTSignals, timing and the physical world