EFront (eLearning software)

eFront is an eLearning platform (also known as a Course Management System (CMS), or Learning Management Systems (LMS), or Virtual Learning Environment (VLE)). eFront has historically been coming in a number of editions, from an open-source edition to the latest eFrontPro edition (which is the only available one in 2018).

eFront is designed to assist with the creation of online learning communities while offering various opportunities for collaboration and interaction through an icon-based user interface. The platform offers tools for content creation, tests building, assignments management, reporting, internal messaging, forum, chat, surveys, calendar and others. It is a SCORM 1.2 certified and SCORM 2004 / 4th edition compliant system translated in 40 languages.

eFront is commonly included in lists of well known open-source learning systems   or is referred to as a Moodle alternative. Independent comparison matrices between learning management systems often favor eFront, especially under usability characteristics. Several research papers and technology portals describe the system under functionality,  usability and standards perspectives.

History
Initial development of the platform began in 2001 as a research prototype funded by the Greek government, led by Dimitris Tsingos and Athanasios Papangelis. SCORM development together with a shift on AJAX technologies lead to the publishing of a stable 2.5 version during 2005. eFront was then rewritten from scratch, making essential changes to the core structure of the system and released under an open-source license in September 2007. Enterprise extensions were integrated with the platform on version 3.5. Social extensions were the most significant addition to version 3.6. On May 9, 2016, Epignosis LLC announced the signing of a strategic partnership deal with US-based software consulting and services provider DHx Software.

Editions
Apart from the community edition that is distributed as open source software, there are three commercial editions with a modified features set, targeted at learning professionals, educational institutions and enterprises. All versions are provided with their source code but only the community edition uses an Open Source Initiative (OSI) accepted license. The commercial versions of eFront are distributed via a partners network.

Awards
In September 2012 eFront won an award from Elearning! Magazine as the best Open Source Solution. In April 2010 eFront won a coveted bronze award for technology excellence in the Learning Management Technology for Small- and Medium-sized Businesses category from Brandon-Hall Research. eFront is also listed as one of the Top LMS Software Solutions for 2012 and 2013.

Features
eFront has a number of features typically found in eLearning platforms:
 * User management
 * Lessons, courses, curriculum and categories management
 * Files management
 * Exam builders
 * Assignments builders
 * Communication tools (forum, chat, calendar, glossary)
 * Progress tracking
 * Authentication methods
 * Enrollment methods
 * Certifications
 * Reports generators
 * Extensibility via modules
 * Payments integration (through PayPal)
 * Social tools (lesson & system history, user wall, user status, Facebook interconnection)
 * Customizable notification system through email
 * Skinning via themes

It also has several features needed in an enterprise environment:
 * Organization structure management
 * Skills management
 * Job positions management
 * Automatic assignment of courses to specific job descriptions
 * Skills gap tests management
 * User card with training history
 * LDAP support

Specifications
eFront runs without modification on Linux, Microsoft Windows, and any other operating system that supports PHP 5.1+ and MySQL 5+. The platform is being built using the object oriented programming paradigm and its architecture is based on the 3-tier design approach separating the system's presentation from its logic and data. The platform is maintained through a community driven process. This leads to small development cycles that produce incremental improvements to the system, followed by bigger development cycles that integrate features requiring architectural changes. The development and testing procedures utilize several aspects of extreme programming.