General overview

AlgebraKiT exposes its core functionality and the frontend widgets as a RESTful web service. The look and feel of these widgets can be configured to match the visual style of your LMS.

These documentation pages describe the general setup of the AlgebraKiT services, including a description of the web service API and the frontend API. Refer to the menu on the left to navigate through these documentation pages. For code examples, refer to code examples on Github. For more detailed questions, please use the contact form to reach out to us.

Main components

AlgebraKiT is a system with the following main components:

  1. The web service, which exposes AlgebraKiT’s evaluation engine, handles exercise sessions and allows access to exercises stored in AlgebraKiT’s CMS.
  2. The frontend API, which handles widget creation and configuration, emitting learning events and the like.
  3. The frontend widgets, which are injected into your web page and interact between AlgebraKiT and the student.
  4. The AlgebraKiT CMS, an online environment where authors are allowed to create new exercises or arrange existing randomized exercises.

Exercise life-cycle

The life-cycle of an exercise is as follows:

  1. Create sessions: New sessions are initialized from your LMS’ backend. AlgebraKiT replies with a session id.
  2. Insert widgets: Your LMS inserts a custom html tag with session attribute for each widget. Function injectWidgets() in AlgebraKiT’s frontend API searches and replaces these tags with the corresponding widget.
  3. Session events: The widget takes care of initializing itself and communicating with AlgebraKiT for evaluation, hints and feedback.
  4. Collect results: The LMS uses the session id to get the session results from AlgebraKiT. This can be done directly after the session or any time later on.

This approach guarantees that no ‘confidential’ information, such as the exercise’s answer, is sent to the frontend. In addition, the amount of data that is sent back and forth between front and back end is minimal.

Frontend - your web page

To be able to use AlgebraKiT in your solution, you need to load the frontend API first. Questions are included through dedicated tags that each refer to the applicable sessions. The frontend API will automatically detect the tags, figure out the question type and launch the corresponding widget.

Note that the sessions are created server side, through a call to the AlgebraKiT web service.

Also note that this is a minimal setup; see the frontend API documentation to read more about configuration, listening to events and sending commands.

<html>
   <head></head>
   <body>
      ...  <!-- Whatever your page contains... -->

      <!--Insert an AlgebraKiT question here -->
      <akit-exercise session-id="{id}"></akit-exercise>

      ...  <!-- Whatever your page contains... -->

      <!--Load frontend API -->
      <script href="https://algebrakit.eu/akit-widgets.min.js"></script>
      <script> <!--Detect tags and launch widgets -->
        AlgebraKIT.injectWidgets();
      </script>
   </body>
</html>
about algebrakit contact us
Contact info@algebrakit.nl
Demo +31 624827648
Privacy Policy Eindhoven, the Netherlands
Copyright AlgebraKiT 2018