One of Strigo's most prominent strengths is the ability to provide learners with hands-on exercises within the app itself. When coupled with effective theoretical lessons, these exercises vastly improve knowledge retention and skill building.

How does it work?

Basically, learners start a course, and once they get to a challenge they will have to perform certain actions within your app for the challenge to be completed successfully.

Strigo offers two ways to track user actions in order to mark the completion of the challenge:

  1. Capturing the app's UI.

  2. Firing custom events directly from your app to Strigo.

Create a challenge

  1. When creating a course, select "Add challenge":

  2. Provide a title and some content as needed (instructions and explanations):

  3. Continue to define the completion criteria in one of the two ways mentioned.

Recorded flow

Using this approach, challenges will be completed by the user doing an action in the app and arriving at a state that represents the completion of the challenge. For that, you will capture a state in your app's UI.

This represents the state the user needs to get to by the end of the exercise.

For example, if the exercise is to create the first dashboard in the app, then you want to capture the end state after the user had created the dashboard. This way, Strigo will know that when a real user that takes the course reaches this state - the challenge is completed successfully.

To capture the desired state:

  1. Fill in the URL of the web page where the user should end the exercise. Following the same example, if the user should create a new dashboard, set the URL of the Dashboards page, where the new dashboard will eventually appear.

    Notice! The URL has to be the exact URL where you want to capture the UI - don't use your base app URL, since it might redirect you to a different page, which will sabotage the capturing.

  2. Click the Record flow button.

  3. A new window will open with your URL and Strigo's recorder in it:

  4. The recorder allows you to select the kind of UI state you want to capture. Currently, we support capturing text changes in the UI. The idea behind this capture is that Strigo will detect the challenge's completion when a certain text appears at a specific location on the page. For example, if the challenge is to create a dashboard named "My First Dashboard", then you want to capture a UI state in which a dashboard appears on the page with the title "My First Dashboard".

    1. Select the Content Changed trigger:

    2. Select the location on the page where the text should eventually appear. Pay attention to choose a location that's not too specific or narrow, but also not too broad (like the whole page). You want to choose a "container" in the page where the text should appear - like a table, a pane, a section, etc.

    3. Set the text that you want to appear in this location when the challenge is considered complete.

    4. Click the Save Steps button.

    5. This will take you back to Lounge and to the Challenge you created in the curriculum.

Custom event

Using this approach, challenges will be marked as completed by the user doing an action in the app that will fire a custom event from your app to Strigo, signaling this action or state. When building the challenge, you will connect it with the corresponding custom event, so that when it's fired, Strigo will know to mark the challenge as complete.

You will have to:

  1. Make sure your app's codebase uses the Strigo SDK to fire a custom event that represents a user action (use this part of the SDK documentation to learn about firing custom events).

  2. Set the same custom event in the challenge's Success Criteria:

What happens when a challenge is completed?

When the right trigger occurs - either the user reaches the captured state or the matching custom event is being fired - the challenge will automatically show as completed for the end-user in the Strigo Academy:

That's it!

Remember to save the course after you create and edit challenges.

You can then preview your courses in-app and test that the challenges actually work and respond to user actions.

Did this answer your question?