Powered by AppSignal & Oban Pro

LivebookHelpers

elixir_livebooks/livebook_helpers.livemd

LivebookHelpers

Documentation for LivebookHelpers.

Function livebook_from_module/2

Takes a module and a path to a file, creates a livebook from the moduledocs in the given module. The .livemd extension is automatically added. Returns the file path for the created livebook.

This function will take a module and turn the module doc found there into a livebook. This make it really easy to create one set of information and have it be represented in different formats. For example you can write a README, use it as the moduledoc then run this function to spit out a livebook with all the same info.

Below is a summary of what we do to create the Livebook:

  • The module is used as the title for the Livebook.
  • Each function’s @doc is put under a section with the function’s name and arity.
  • doctests become (formatted) elixir cells
  • The magic line to make github render livebooks as markdown is added.

Examples

mix create_livebook_from_module LivebookHelpers "my_livebook"

Function livebook_from_module/3

Takes a module and a path to a file, creates a livebook from the moduledocs in the given module. The .livemd extension is automatically added. The provided deps are put into a Mix.install section at the start of the livebook, so the deps should be in the format that Mix.install allows.

This function will take a module and turn the module doc found there into a livebook. This make it really easy to create one set of information and have it be represented in different formats. For example you can write a README, use it as the moduledoc then run this function to spit out a livebook with all the same info.

Below is a summary of what we do to create the Livebook:

  • The module is used as the title for the Livebook.
  • Each function’s @doc is put under a section with the function’s name and arity.
  • doctests become (formatted) elixir cells
  • The magic line to make github render livebooks as markdown is added.

Examples

mix create_livebook_from_module LivebookHelpers "my_livebook" "[livebook_helpers: ">= 0.0.0"]"

Function livebook_string/2

Returns the text that can be used to create a livebook using the docs in the supplied module.