This project is an Content Authoring tool built with Electron. This application can be used to create courses for Learning Management Systems (LMSs). What makes this tool different than others, is the dynamic template system. Our template system allows developers to code their own, offering a great degree of flexibility.
This Employment Ontario project is funded in part by the Government of Canada and the Government of Ontario
This project uses yarn to manage dependencies, you will need to have that installed.
npm install yarn -g
Install lerna globally.
yarn global lerna
Next install the project.
lerna bootstrap
After that is complete, you'll need to build a few internal packages
yarn update
Finally, you can start the project
yarn start
This project is mono repo consisting of a number of packages, each of which is written in typescript. Additionally, any package that contains UI is written with react.
This package is the electron application and is the core of the project.
yarn start will launch the application.
yarn start:update will build internal packages that the app relies on, then launch.
yarn package will build internal packages and then build platform specific executables.
Whenever you make changes to any package that isn't the editor, use
yarn start:updateto get those changes to be applied to the editor.
When a user publishes a project, this package is used to run that content as a course in an LMS.
While within the player package, you can yarn start to launch a dev environment for isolated development.
This package is a helper library that facilitates communication between the player and the LMS. The standard for this communication is SCORM.
Core is not an actual template but a provider of useful APIs to manage content.
Within the package of each template (with exception to core), you can yarn start to launch a dev environment and develop the template in isolation.