Packages
tableau
0.7.1
0.30.0
0.29.0
0.28.0
0.27.1
0.27.0
0.26.1
0.26.0
0.25.1
0.25.0
0.24.1
0.24.0
0.23.1
0.23.0
0.22.0
0.21.0
0.20.1
0.20.0
0.19.0
0.18.0
0.17.1
0.17.0
0.16.0
0.15.3
0.15.2
0.15.1
0.15.0
0.14.3
0.14.2
0.14.1
0.14.0
0.13.0
0.12.0
0.11.1
0.11.0
0.10.1
0.10.0
0.9.0
0.8.0
0.7.1
0.7.0
0.6.0
0.5.0
0.4.0
0.3.1
0.3.0
0.2.0
0.1.2
0.1.1
0.1.0
Static site generator for elixir
Current section
Files
Jump to
Current section
Files
lib/tableau/router.ex
defmodule Tableau.Router do
@moduledoc false
use Plug.Router, init_mode: :runtime
require Logger
import Tableau.Strung
@not_found ~g'''
<!DOCTYPE html><html lang="en"><head></head><body>Not Found</body></html>
'''html
plug :recompile
plug :rerender
plug Tableau.IndexHtml
plug Plug.Static, at: "/", from: "_site", cache_control_for_etags: "no-cache"
plug :match
plug :dispatch
match _ do
Logger.error("File not found: #{conn.request_path}")
send_resp(conn, 404, @not_found)
end
defp recompile(conn, _) do
Tableau.CodeReloader.reload()
conn
end
defp rerender(conn, _) do
Mix.Task.rerun("tableau.build", ["--out", "_site"])
conn
end
end