       Note: This function is overridable
       """
       @spec page_paths(Map.t) :: [Tuple.t]
-      def page_paths(%{talon: talon} = _talon) do
-        talon.page_names()
-        |> Enum.map(&{Talon.Utils.titleize(&1),  "/talon/pages/#{&1}"})
+      def page_paths(%{talon: talon} = _talon) do  # TODO: move to concern and use this approach for resource_paths (DJS)
+        talon.pages |> Enum.map(&{apply(&1, :title, []),  "/talon/pages/#{apply(&1, :name, [])}"})
       end
 
       @doc """

      def resource_paths(%{talon: talon} = _talon) do
        talon.resources()
        |> Enum.map(fn talon_resource ->
          schema = talon_resource.schema() # TODO: let resource determine presentation name (DJS)
          {Talon.Utils.titleize(schema) |> Inflex.Pluralize.pluralize, Talon.Utils.talon_resource_path(schema, :index)}
        end)
      end

    quote do
      @__context__ unquote(context) || (Module.split(__MODULE__) |> hd |> Module.concat(nil))

      # TODO: too specific to template. Move to view.
      @spec index_card_title() :: String.t
      def index_card_title, do: title()

      @doc """
      Returns a list of links for each of the Talon managed pages.
