LiveDeck is an interactive presentation deck built with Elixir, Phoenix, and LiveView. The web-based slide deck features provide the ability to display real-time data and for engaging audience interactions.
Run asdf install
to pull in Erlang, Elixir, and Node versions.
To start your Phoenix server:
- Install dependencies with
mix deps.get
- Create and migrate your database with
mix ecto.setup
- Install Node.js dependencies with
npm --prefix=assets install
(append--force phoenix_live_view
to update the NPM Live View dependency if there has been an update to the phoenix_live_view mix dep since your last run of the project) - Start Phoenix endpoint with
mix phx.server
Now you can visit localhost:4000
from your browser.
CI will run the following commands on the codebase:
mix credo
mix format --check-formatted
mix coveralls --trace
(tests + test coverage)mix dialyzer
(static type analysis)
Run mix check
to check code quality.
It checks compiler, credo, dialyzer, ex_doc, ex_unit, formatter, npm_test and sobelow by default. excoveralls
is added to config file. To skip any check add {:toolname, false},
in the tools array of .check.exs
file. To add custom command on a tool add {:toolname, command: "mix command"}
in the tools array of .check.exs
file.
For more info visit: https://github.com/karolsluszniak/ex_check https://hexdocs.pm/ex_check/0.9.0/Mix.Tasks.Check.html#content
- Phoenix Docs: https://hexdocs.pm/phoenix
- Phoenix LiveView Docs: https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html
- Elixir Docs: https://hexdocs.pm/elixir/Enum.html
- Ecto Docs: https://hexdocs.pm/ecto/Ecto.html
- Ecto SQL Docs: https://hexdocs.pm/ecto_sql/Ecto.Adapters.SQL.html#content
- Erlang Docs: https://erlang.org/doc/search/