View Source mix create_livebook_from_module (livebook_helpers v0.0.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.

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.