about summary refs log tree commit diff
path: root/lib/rook_web/endpoint.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rook_web/endpoint.ex')
-rw-r--r--lib/rook_web/endpoint.ex47
1 files changed, 47 insertions, 0 deletions
diff --git a/lib/rook_web/endpoint.ex b/lib/rook_web/endpoint.ex
new file mode 100644
index 0000000..dd847f7
--- /dev/null
+++ b/lib/rook_web/endpoint.ex
@@ -0,0 +1,47 @@
+defmodule RookWeb.Endpoint do
+  use Phoenix.Endpoint, otp_app: :rook
+
+  # The session will be stored in the cookie and signed,
+  # this means its contents can be read but not tampered with.
+  # Set :encryption_salt if you would also like to encrypt it.
+  @session_options [
+    store: :cookie,
+    key: "_rook_key",
+    signing_salt: "IVge2MOv"
+  ]
+
+  socket "/socket", RookWeb.UserSocket,
+    websocket: true,
+    longpoll: false
+
+  # Serve at "/" the static files from "priv/static" directory.
+  #
+  # You should set gzip to true if you are running phx.digest
+  # when deploying your static files in production.
+  plug Plug.Static,
+    at: "/",
+    from: :rook,
+    gzip: false,
+    only: ~w(css fonts images js favicon.ico robots.txt)
+
+  # Code reloading can be explicitly enabled under the
+  # :code_reloader configuration of your endpoint.
+  if code_reloading? do
+    socket "/phoenix/live_reload/socket", Phoenix.LiveReloader.Socket
+    plug Phoenix.LiveReloader
+    plug Phoenix.CodeReloader
+  end
+
+  plug Plug.RequestId
+  plug Plug.Telemetry, event_prefix: [:phoenix, :endpoint]
+
+  plug Plug.Parsers,
+    parsers: [:urlencoded, :multipart, :json],
+    pass: ["*/*"],
+    json_decoder: Phoenix.json_library()
+
+  plug Plug.MethodOverride
+  plug Plug.Head
+  plug Plug.Session, @session_options
+  plug RookWeb.Router
+end