Pyro is a suite of libraries for building UI in Phoenix.
-
Component tooling for Phoenix.
- Customizable "overrides" system for granularly customizable themes
- Extended component attributes, e.g. CSS merging
-
Ready-made Phoenix components, built with pyro.
- Heex component library
- Overrides presets to get started quickly while allowing deep customization
-
Declarative UI for Ash Framework.
- Ash extensions providing a declarative UI DSL
-
Components that automatically render PyroComponents declaratively via AshPyro.
For more details on Pyro, check out the About page.
To install Pyro and write your own components, follow the Get Started guide. For the other features, please see the "Get Started" guide for the appropriate library instead.
As long as Elixir is already installed:
git clone git@github.com:frankdugan3/pyro.git
cd pyro
mix setup
For writing docs, there is a handy watcher script that automatically rebuilds/reloads the docs locally: ./watch_docs.sh
- Surface UI: Surface changed the game for LiveView. Many of its improvements have made it upstream.
- AshAuthenticationPhoenix: The component override system is pretty awesome, and directly inspired Pyro's override system.