Adzz

Adzz

LivebookHelpers - Creating Livebooks From Module docs

Announcing GitHub - Adzz/livebook_helpers: Generates livebooks from module docs

This is a library that generates a livebook from a module’s docs. It turns the module, type and function docs into a livebook, turning any doctests and elixir snippets into elixir cells and setting the doc itself as markdown.

This is helpful for boostrapping livebooks and having interactive versions of the Hexdoccs. You can for example set up a pipeline on hex publish that generates the livebook as part of it.

I’ve experimented with generating a livebook for all the core Elixir modules, for example here is the livebook for the Collectable protocol. Here is a livebook from the Time module.

Feedback welcome :tada:

Most Liked

Adzz

Adzz

Here is a blog post introducing what you can do with it:

Adzz

Adzz

This is a very cool hack but…

I think this nicely sums up most of my programming career to date :sweat_smile:.

Some nice ideas. I think if we were to go that route it could be good to build it into hexdocs itself.
I did try to host for free all the core Elixir module docs on Fly.io but one problem I ran into is there is a bit of a limit on the size of livebook that you can reasonably run.

For example you can’t open or run a livebook created in this manner for the Enum module in Elixir - it’s simply too large.

There isn’t really a workaround for this yet either - each Elixir cell is an instance of the monaco editor so if you have a lot of them the page gets very heavy. See this issue for more.

Where Next?

Popular in Libraries Top

hpopp
After just over two years in development, this latest version of Pigeon is what I finally consider done in regards to my original vision ...
New
kevinlang
Hey all, We have made an Ecto3 Adapter for SQLite3, ecto_sqlite3! We have successfully on-boarded the full suite of integration tests (...
New
oltarasenko
Dear Elixir community, After a year of development, bug fixes, and improvements, we are proudly ready to share the release of Crawly 0.1...
New
archan937
It is a well-know topic within the Elixir community: “To mock or not to mock? :)” Every alchemist probably has his / her own opinion con...
New
michalmuskala
Another small library today. PersistentEts Hex: persistent_ets | Hex GitHub: GitHub - michalmuskala/persistent_ets Ets table backed by...
New
achempion
Hi, I would like to tell about my initiative to further maintain and develop Waffle project which is the fork of Arc library. The progre...
New
riverrun
I’ve just released version 3 of Comeonin, a password hashing library. The following small changes have been made: changes to the NIF c...
New
asiniy
Hey there! I wrote a download elixir package which does exactly what its name about - an easy way to download files. I saw solutions ...
New
wmnnd
Hi there, for my project DBLSQD, I needed a file storage solution that is a bit more flexible than Arc. Because I thought others might f...
New
mplatts
With HEEX released we decided to start a components library using Tailwind CSS - check it out here: Petal Components. We also have a boi...
New

Other popular topics Top

peerreynders
Manning 2016 Halloween weekend sale via Deal of the Day Friday, October 28 - Half off all MEAPs - code WM102816LT Saturday, October 29 ...
326 29600 154
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
JorisKok
I have a server on AWS, and was running a load test using artillery. When looking at the Phoenix dashboard I see the Ports going to 100% ...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New
minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New
stefanluptak
Hello everybody, usually, I use a 29" ultra-wide monitor for VSCode which can easily accomodate explorer (files panel) + file with code ...
New
fireproofsocks
Forgive me if this is obvious, but how does one delete a database record WITHOUT selecting it first? https://hexdocs.pm/ecto/Ecto.Repo.h...
New
AstonJ
We’ve put together this wiki for Phoenix LiveView - please feel free to add any info you feel is worth including. What is Phoenix LiveV...
New
siddhant3030
Hi, I have to write a raw query for one of my project. But till now I have used ecto queries and don’t have much experience writing raw ...
New
magnetic
Hey :wave:t3: Elixir community, I’ve been learning Elixir, and working on some side projects. My editor of choice is VSCode, and althoug...
New

Sub Categories:

We're in Beta

About us Mission Statement