/learnento

English learning platform for non-native speakers

Primary LanguageRuby

Learnento


Build Status Coverage Status Code Climate

What is it?

Learnento is my end-of-course "thesis".

It's a chatting platform, with realtime messaging and realtime video/voice conferencing.

The project's name stands for Learning English Together, the final goal of this project is to build a service to connect people wanting to make their english skills progress.

As the main features are all the realtime side of this web-app, all the english learning side will be build later.

Current State

I'm currently working on the realtime text chat, it should works kinda like the messenger.com like.

Here's what I still have to do later :

  • Voice/Video chat with WebRTC
  • Currently the user search is fairly basic, it should later suggest people depending on personal infos given by the user (hobbies, country, etc)
  • A lot of design, currently the website looks fairly bad

Which technologies are used ?

Backend/Frontend

  • Ruby on Rails : Used as the backend providing a RESTful API, serving the web-app, and also used for deploying and for the tests.
  • AngularJS : Used for the frontend, providing a single-page app

Realtime features

  • Socket.io : Enables all the realtime features on the project
  • Node.js : Manages socket.io client connections, and speaks with the Rails app through Redis
  • Redis : This pub/sub service allows the Rails app and the Node/Socket.io server to communicate through channels
  • WebRTC: Used for voice/video conferencing