All Projects → fremantle-industries → navigator

fremantle-industries / navigator

Licence: MIT license
Global navigation between multiple Phoenix endpoints

Programming Languages

elixir
2628 projects

Navigator

Build Status hex.pm version

Global navigation between multiple Phoenix endpoints, tailwindcss friendly

navigation

Installation

Add the navigator package to your list of dependencies in mix.exs:

def deps do
  [
    {:navigator, "~> 0.0.8"}
  ]
end

Usage

Configure the navigation links in config/config.exs

# config/config.exs
use Mix.Config

config :navigator,
  links: %{
    storefront: [
      %{
        label: "Storefront Home",
        to: {StorefrontWeb.Router.Helpers, :home_path, [StorefrontWeb.Endpoint, :index]},
        class: "text-4xl"
      },
      %{
        label: "Orders",
        to: {StorefrontWeb.Router.Helpers, :order_path, [StorefrontWeb.Endpoint, :index]}
      },
      %{
        label: "Admin",
        to: {AdminWeb.Router.Helpers, :home_url, [AdminWeb.Endpoint, :index]}
      }
    ],
    admin: [
      %{
        label: "Admin Home",
        to: {AdminWeb.Router.Helpers, :home_path, [AdminWeb.Endpoint, :index]},
        class: "text-4xl"
      },
      %{
        label: "Order Admin",
        to: {AdminWeb.Router.Helpers, :order_path, [AdminWeb.Endpoint, :index]}
      },
    ]
  }

Render the navigation in your phoenix templates

<%= render Navigator, "horizontal.html", conn: @conn %>

Authors

License

navigator is released under the MIT license

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].