Raxol.Docs.InteractiveTutorial (Raxol v0.2.0)

View Source

Interactive tutorial system for Raxol documentation.

This module provides a framework for creating and displaying interactive tutorials that guide users through Raxol features with hands-on examples and step-by-step instructions.

Features:

  • Step-by-step guides with interactive examples
  • Progress tracking and bookmarking
  • Exercise validation
  • Contextual hints and help
  • Integration with documentation

Summary

Functions

Bookmarks the current position in a tutorial.

Exports a user's progress for saving.

Gets the current tutorial and step.

Gets a hint for the current exercise.

Returns to a bookmarked position.

Imports saved progress.

Initializes the tutorial system.

Lists all bookmarks.

Returns a list of all available tutorials.

Goes to the next step in the current tutorial.

Goes to the previous step in the current tutorial.

Registers a new tutorial.

Starts a tutorial by ID.

Validates the current exercise.

Types

step_id()

@type step_id() :: String.t()

tutorial_id()

@type tutorial_id() :: String.t()

Functions

bookmark(name \\ nil)

Bookmarks the current position in a tutorial.

export_progress()

Exports a user's progress for saving.

get_current_position()

Gets the current tutorial and step.

get_hint(index \\ 0)

Gets a hint for the current exercise.

goto_bookmark(bookmark_name)

Returns to a bookmarked position.

import_progress(progress_data)

Imports saved progress.

init()

Initializes the tutorial system.

list_bookmarks()

Lists all bookmarks.

list_tutorials()

Returns a list of all available tutorials.

next_step()

Goes to the next step in the current tutorial.

previous_step()

Goes to the previous step in the current tutorial.

register_tutorial(tutorial, state \\ nil)

Registers a new tutorial.

start_tutorial(tutorial_id)

Starts a tutorial by ID.

validate_exercise(submission)

Validates the current exercise.