1. Use mix docs to create docs dir.
You'll need to add these to the deps section for your project in mix.exs
[{:earmark, "~> 0.1", only: :dev},
{:ex_doc, "~> 0.5", only: :dev}]
Then run
mix deps.get
mix deps.compile
mix docs
This will create a doc subdir with an html documention for your project very similar to
that used by the standard elixir docs.
What you need to do know is to install those html pages into the special git branch that
allows you to create a user.github.io/project website.
2. Follow manual gh_pages instructions on github.
https://help.github.com/articles/creating-project-pages-manually/
git clone git@github.com:user/project.git project-gh-pages
cd project-gh-pages
git checkout --orphan gh-pages
cp -r ../project/doc/* .
git add --all
( Note this is about the only time I would ever use git add --all )
git commit -a -m "Ex doc output"
git push origin gh-pages
After a few minutes the web pages should show at the url
http://user.github.io/project