CourseYard — prototype of an e-publication tool

http://courseyard.com/

Project goal was to create a prototype of e-publication tool used in online learning platform.

In modern world online learning provides numerous possibilities to students willing to broaden their horizons, educational establishments offering Internet courses and companies training their employees. Online learning allows various organizations to cut educational and training costs. With it students can use time more effectively and study whenever and wherever they want to.

Our client CourseYard is an online learning platform for teachers, students, educational establishments, libraries and publishing houses. The company provides services on creating in-build CourseWare (textbook + multimedia + interactivity).

We have created the following structure for CourseYard e-publication tool:

Structure of CourseYard e-publication tool

Design for editor and finished publication

The first stop was the editor itself. We were to complete the following task: create a working product with basic functions that could be easily extended in the future. In prototype we have included all the buttons and controls that will be available in the end product so that users and potential investors could see all the features.

CourseYard main screen

Two main functions of the editor are creating and editing publications. We have also prepared a sample publication to demonstrate what can be done in the editor.

 CourseYard templates

Publication can contain the following widgets:

  • Text block
  • Image or slideshow
  • Video
  • Interactive test

Main advantage of the editor is that publication is created and edited on the fly. Furthermore, author can instantly see what the end result will look like. Author can change or remove any of the widgets simply by clicking on them. In order to edit text author has to highlight the part that needs to be changed. Style editing window will open right above it. Image widget can be used to add or remove photos or change their display order.

CourseYard editing tools

All information entered by user is instantly saved in the background thanks to autosave. This way author will never lose changes made to the publication. Editor also allows several users to work on the publication simultaneously.

After publication goes live authors can view usage statistics. They can also identify sections readers find to be more attractive, images they viewed and tests they completed and scores they received.

Statistics in CourseYard

Of course, every publication, electronic or not, should have a cover. Cover images can also be added in the editor:

Book cover in CourseYard

After publication is ready it joins others on the bookshelf:

Bookshelf in CourseYard

Back-end functions

Back-end for this project was created using popular Symfony2 PHP framework.

Why have we chosen Symfony2? This framework has several advantages:

  • High performance
  • Safety and reliability
  • Expendability

Simultaneous work on publication was essential for this product. To implement simultaneous collaboration in real time we used WebSocket protocol. It allows to quickly synchronize data between the editors opened on the computer of each of the authors.

For more flexibility of server communication we wrote RESTful API. Thanks to it we spend little time on connecting back-end and front-end parts and created mobile application in a timely manner.

Android app features

Modern e-learning platform not available on mobile devices seems to be incomplete. That’s why we have also created a CourseYard mobile app for students that want to study on the go or simply prefer to study on mobile devices.

Android application allows them to view publications created on the website. Service remembers the last book they have opened and automatically opens it in the app.

Cast:

  • Oleg
    Oleg

    Designer

  • Alex Lensky
    Alex Lensky

    Back End Developer

  • Igor Bogdosarov
    Igor Bogdosarov

    Front-end developer

  • Oleksandr
    Oleksandr

    Android Developer

  • Artur Mkrtychian
    Artur Mkrtychian

    Project Manager