mentor.me

Executive summary

In early 2016 we received the task of developing mentor.me, a live video tuition platform which connects freelance mentors with interested students. We jumped at the chance to work on a different type of project and to play around with cutting-edge technologies.

Case studies: mentor.me Illustration

The Challenge

mentor.me is a platform which lets presenters, called mentors, to reach out and connect with prospective students, and give lectures in various fields, like business or life coaching. Mentors start a lecture, which can be open, or invitation based. Invitation based lectures can also be separated into group lectures or private lessons.

Lectures are in-fact live audio-video streams, accompanied by a chat service where mentors can text students or share training materials. Video-streams can be either unidirectional, where only students see the lecturer, or bidirectional, where mentors can also see their students.

Students can attend these presentation and pay with credits for every minute they spend listening to a lecture. Teachers earn credits for each lecture and can cash in their credits each week. There are different going rates for each type of lecture. Private lectures earn more credits per student than group lectures, and considerably more than open lectures.

Case studies: mentor.me Illustration

The Solution

We came up with an architecture that consists of three elements: the client application, which is used by the mentors and students, a backend which provides an API for communication with the database layer and finally a stream server for the video feeds.

The client is an Angular.js driven application that receives audio and video input and forwards the data packages using WebRTC towards the stream server, which in part can be accessed by the other clients to read this data.

For storing data, the client makes API calls, to which the API server responds by emitting a socket event, telling the client to make a second call for accessing the updated information. The API is built using PHP and Lumen as a framework.

Two separate client instances communicate in a similar fashion, using websockets. To ease our work with websockets we used the socket.io framework.

Case studies: mentor.me Illustration

Technology Stack

  • Angular.js
  • Javascript
  • WebRTC
  • socket.io
  • Lumen
  • PHP
  • Nginx

Other Case Studies

Case studies: IDEA e-Learning Software

IDEA

Being pioneers in the domain of scuba diving education, IDEA quickly realised the potential of mixing in technology with their well-established teaching practices, and put us in charge of developing their e-teaching platform.

Read on
Case studies: nJoy - The Hive

nJoy - The Hive

DAI-TECH, the fast-growing company behind the nJoy brand, quickly outgrew their existing software infrastructure and needed a custom-built integrated solution. They employed us to deliver a product lifecycle management tool, created from the ground up to fit their particular needs.

Read on

Want to hire us or just say hi?Get in touch now

We’re always willing and ready to listen to any request. So, if you like our work and you’ve got a project you want to discuss, just grab your phone or keyboard and contact us.

Company details

SC C4WEB STUDIO SRL Company no.: J35/2534/2013 VAT no.: 32329797