An example AT Protocol application, written in Elixir using atex and Drinkup.
1# This file is responsible for configuring your application
2# and its dependencies with the aid of the Config module.
3#
4# This configuration file is loaded before any dependency and
5# is restricted to this project.
6
7# General application configuration
8import Config
9
10config :statusphere,
11 ecto_repos: [Statusphere.Repo],
12 generators: [timestamp_type: :utc_datetime, binary_id: true]
13
14# Configure the endpoint
15config :statusphere, StatusphereWeb.Endpoint,
16 url: [host: "localhost"],
17 adapter: Bandit.PhoenixAdapter,
18 render_errors: [
19 formats: [html: StatusphereWeb.ErrorHTML, json: StatusphereWeb.ErrorJSON],
20 layout: false
21 ],
22 pubsub_server: Statusphere.PubSub,
23 live_view: [signing_salt: "t+91lIqk"]
24
25# Configure esbuild (the version is required)
26config :esbuild,
27 version: "0.25.4",
28 statusphere: [
29 args:
30 ~w(js/app.js --bundle --target=es2022 --outdir=../priv/static/assets/js --external:/fonts/* --external:/images/* --alias:@=.),
31 cd: Path.expand("../assets", __DIR__),
32 env: %{"NODE_PATH" => [Path.expand("../deps", __DIR__), Mix.Project.build_path()]}
33 ]
34
35# Configure tailwind (the version is required)
36config :tailwind,
37 version: "4.1.12",
38 statusphere: [
39 args: ~w(
40 --input=assets/css/app.css
41 --output=priv/static/assets/css/app.css
42 ),
43 cd: Path.expand("..", __DIR__)
44 ],
45 version_check: false,
46 path:
47 System.get_env(
48 "TAILWINDCSS_PATH",
49 Path.expand("../assets/node_modules/.bin/tailwindcss", __DIR__)
50 )
51
52# Configure Elixir's Logger
53config :logger, :default_formatter,
54 format: "$time $metadata[$level] $message\n",
55 metadata: [:request_id]
56
57# Use Jason for JSON parsing in Phoenix
58config :phoenix, :json_library, Jason
59
60config :atex, Atex.OAuth,
61 scopes: ["transition:generic"],
62 key_id: "statusphere"
63
64# Import environment specific config. This must remain at the bottom
65# of this file so it overrides the configuration defined above.
66import_config "#{config_env()}.exs"