End-of-degree Project — Class Recorder — Blog #1 — Introduction


My name is Carlos Ruiz Ballesteros, I am a student at the University Rey Juan Carlos. This blog series will consist of a follow-up on the project Class Recorder.

The tutor of this project is Micael Gallego, researcher and teacher at the URJC.

What will be Class Recorder?

Class Recorder will be an application developed with the purpose of creating a platform that teachers can use to record their classes. By this way, the recording process and video classes uploading will be automated as much as possible, offering the possibility to the students to see and download this video-classes. Also teachers will be able to control with an smartphone the audio and slides recording process, changing slides…

What technologies will use Class Recorder?

The following technologies will be used on the backend:

  • Spring, Java, Maven.
  • Docker.
Spring Logo

With Java and Spring(using Spring-Boot) we will code our server-side project, with all the code neccessary to proccess all of our requests and cover our logic to process and render videos that will be available after for students. But this is one of the general things that the application will do.

Docker Logo

Docker. A great technology to deploy easily our application to teacher’s computers and deploy a public server accesible to the students to see video-classes.

In addition, the application will have more than an unique Frontend. These technologies will be used in this part:

  • JavaScript, TypeScript, Angular.
  • Ionic (Mobile Frontend).
Ionic2 and Angular Logos

Angular. The favorite JavaScript Framework. This will cover all the Front-End logic. I am going to make this application using the best practices and show it in this blog series.

Furthermore, we will use the powerfull Ionic2 for our mobile app.


In the following blog it will be discussed a possible architecture for the project. Also we will prepare our repository on github and try some libraries and other technologies not mentioned here like the use of ffmpeg, libraries of youtube to upload videos, etc.