Modules
Host-resolved multi-site theming for Phoenix.
Helpers for base controllers that are also routed from theme routers.
Embeds a theme's templates, falling back to the base application ones.
on_mount hook resolving the site from the socket host, for both the
disconnected and the connected mount.
Hands the request over to the current theme's router, or to the
:platform router when no site was resolved. Replaces the
plug MyAppWeb.Router line at the end of the endpoint.
Resolves conn.host into a site and assigns :current_site and
:current_theme. Hosts in :platform_hosts are left untouched so they
can be served by the platform router; any other unknown host gets a 404.
A site served by the application, bound to a theme and a set of hosts.
Resolves a request host into a Multitenancy.Site.
Resolves sites from a YAML file loaded once into :persistent_term.
Declares a theme.
Mix Tasks
Builds themes/<name>/assets/css/app.css with tailwind and
themes/<name>/assets/js/app.js with esbuild into
priv/static/themes/<name>/app.{css,js}.
Generates a theme skeleton.