ElixirCms
A developer friendly content management system written for Elixir
Installation
If available in Hex, the package can be installed
by adding elixir_cms
to your list of dependencies in mix.exs
:
def deps do
[
{:elixir_cms, "~> 0.1.0"}
]
end
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/elixir_cms.
Usage
In a Phoenix application, you will typically have a router generated for you.
Adding an /admin
scope to forward requests to the ElixirCMS router will
give you a basic admin interface.
defmodule JackWebsiteWeb.Router do
# the following is generated by Phoenix
use JackWebsiteWeb, :router
pipeline :browser do
plug :accepts, ["html"]
plug :fetch_session
plug :fetch_flash
plug :protect_from_forgery
plug :put_secure_browser_headers
end
pipeline :api do
plug :accepts, ["json"]
end
scope "/", JackWebsiteWeb do
pipe_through :browser
get "/", PageController, :index
end
# Add the following to your router:
# (you can replace BasicAuth with your authentication method of choice)
pipeline :auth do
plug BasicAuth, use_config: {:jack_website, :basic_auth}
end
scope "/admin" do
pipe_through [:auth, :browser]
forward "/", ElixirCMS.Router, namespace: "admin"
end
end