Skip to content

Extensible Phoenix components, built with Pyro.

License

Notifications You must be signed in to change notification settings

frankdugan3/pyro_components

Repository files navigation

hex.pm hex.pm Documentation hex.pm github.com

Pyro

Pyro is a suite of libraries for building UI in Phoenix.

  • Pyro

    Component tooling for Phoenix.

    • Customizable "overrides" system for granularly customizable themes
    • Extended component attributes, e.g. CSS merging
  • PyroComponents

    Ready-made Phoenix components, built with pyro.

    • Heex component library
    • Overrides presets to get started quickly while allowing deep customization
  • AshPyro

    Declarative UI for Ash Framework.

    • Ash extensions providing a declarative UI DSL
  • AshPyroComponents

    Components that automatically render PyroComponents declaratively via AshPyro.

About

For more details on PyroComponents, check out the About page.

Installation

To install PyroComponents and use them in your Phoenix app, follow the Get Started guide. For the other features, please see the "Get Started" guide for the appropriate library instead.

Development

As long as Elixir is already installed:

git clone git@github.com:frankdugan3/pyro_components.git
cd pyro_components
mix setup

For writing docs, there is a handy watcher script that automatically rebuilds/reloads the docs locally: ./watch_docs.sh

Prior Art

  • Petal: Petal is an established project with a robust set of components, and served as a substantial inspiration for this project.
  • Doggo: Headless UI components for Phoenix, with an emphasis on semantic HTML and APG guidelines.