2022-03-21 17:43:24 +13:00
|
|
|
defmodule AshHq.MixProject do
|
|
|
|
use Mix.Project
|
|
|
|
|
2022-11-17 08:47:43 +13:00
|
|
|
@version "0.1.0"
|
|
|
|
|
2022-03-21 17:43:24 +13:00
|
|
|
def project do
|
|
|
|
[
|
|
|
|
app: :ash_hq,
|
2022-11-17 08:47:43 +13:00
|
|
|
version: @version,
|
2022-03-21 17:43:24 +13:00
|
|
|
elixir: "~> 1.12",
|
|
|
|
elixirc_paths: elixirc_paths(Mix.env()),
|
2022-11-14 04:43:11 +13:00
|
|
|
compilers: Mix.compilers() ++ [:surface],
|
2022-03-21 17:43:24 +13:00
|
|
|
start_permanent: Mix.env() == :prod,
|
|
|
|
aliases: aliases(),
|
2022-12-28 08:11:08 +13:00
|
|
|
deps: deps(),
|
|
|
|
dialyzer: [
|
|
|
|
ignore_warnings: "dialyzer.ignore_warnings",
|
2023-01-23 17:03:12 +13:00
|
|
|
plt_add_apps: [:mix, :nostrum]
|
2022-12-28 08:11:08 +13:00
|
|
|
]
|
2022-03-21 17:43:24 +13:00
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
# Configuration for the OTP application.
|
|
|
|
#
|
|
|
|
# Type `mix help compile.app` for more information.
|
|
|
|
def application do
|
|
|
|
[
|
|
|
|
mod: {AshHq.Application, []},
|
2022-08-29 00:42:24 +12:00
|
|
|
extra_applications: [:logger, :runtime_tools, :os_mon]
|
2022-03-21 17:43:24 +13:00
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
# Specifies which paths to compile per environment.
|
|
|
|
defp elixirc_paths(:test), do: ["lib", "test/support"]
|
|
|
|
defp elixirc_paths(_), do: ["lib"]
|
|
|
|
|
|
|
|
# Specifies your project dependencies.
|
|
|
|
#
|
|
|
|
# Type `mix help deps` for examples and options.
|
|
|
|
defp deps do
|
|
|
|
[
|
2022-11-01 07:21:50 +13:00
|
|
|
{:ash, github: "ash-project/ash", override: true},
|
2023-01-18 15:33:49 +13:00
|
|
|
{:ash_postgres, github: "ash-project/ash_postgres"},
|
2022-11-01 20:20:09 +13:00
|
|
|
{:ash_admin, github: "ash-project/ash_admin"},
|
|
|
|
{:ash_phoenix, github: "ash-project/ash_phoenix", override: true},
|
2022-11-02 18:30:46 +13:00
|
|
|
{:ash_graphql, github: "ash-project/ash_graphql"},
|
2022-11-05 11:47:11 +13:00
|
|
|
{:ash_json_api, github: "ash-project/ash_json_api"},
|
2023-01-18 15:33:49 +13:00
|
|
|
{:ash_authentication, github: "team-alembic/ash_authentication", override: true},
|
2023-01-13 17:52:58 +13:00
|
|
|
{:ash_authentication_phoenix, github: "team-alembic/ash_authentication_phoenix"},
|
2022-11-01 20:20:09 +13:00
|
|
|
{:ash_blog, github: "ash-project/ash_blog"},
|
|
|
|
{:ash_csv, github: "ash-project/ash_csv"},
|
2023-01-22 19:36:48 +13:00
|
|
|
# Discord
|
2023-01-24 03:15:40 +13:00
|
|
|
{:nostrum, github: "zachdaniel/nostrum"},
|
2023-01-22 19:36:48 +13:00
|
|
|
{:cowlib, "~> 2.11", hex: :remedy_cowlib, override: true},
|
|
|
|
# UI
|
2022-12-21 20:25:09 +13:00
|
|
|
{:tails, "~> 0.1"},
|
|
|
|
{:sunflower_ui, github: "zachdaniel/sunflower_ui"},
|
2022-06-05 08:58:50 +12:00
|
|
|
{:earmark, "~> 1.5.0-pre1", override: true},
|
2023-01-22 19:36:48 +13:00
|
|
|
# Other
|
|
|
|
{:absinthe_plug, "~> 1.5"},
|
2022-12-15 21:28:03 +13:00
|
|
|
{:nimble_options, "~> 0.5.1", override: true},
|
2022-12-18 20:57:36 +13:00
|
|
|
{:spark, "~> 0.3", override: true},
|
2022-10-05 09:24:14 +13:00
|
|
|
{:surface, "~> 0.9.1"},
|
2022-03-26 10:17:01 +13:00
|
|
|
{:surface_heroicons, "~> 0.6.0"},
|
2022-03-29 11:05:19 +13:00
|
|
|
# Syntax Highlighting
|
2022-03-26 10:17:01 +13:00
|
|
|
{:makeup, "~> 1.1"},
|
|
|
|
{:makeup_elixir, "~> 0.16.0"},
|
2022-03-29 11:05:19 +13:00
|
|
|
{:makeup_graphql, "~> 0.1.2"},
|
|
|
|
{:makeup_erlang, "~> 0.1.1"},
|
|
|
|
{:makeup_eex, "~> 0.1.1"},
|
|
|
|
{:makeup_js, "~> 0.1.0"},
|
|
|
|
{:makeup_sql, "~> 0.1.0"},
|
2022-08-06 14:53:13 +12:00
|
|
|
# Emails
|
|
|
|
{:swoosh, "~> 1.3"},
|
2022-08-06 14:08:23 +12:00
|
|
|
{:premailex, "~> 0.3.0"},
|
|
|
|
# Authentication
|
|
|
|
{:bcrypt_elixir, "~> 3.0"},
|
2022-10-11 14:21:55 +13:00
|
|
|
# Encryption
|
|
|
|
{:cloak, "~> 1.1"},
|
2022-08-07 11:22:58 +12:00
|
|
|
# CSP
|
|
|
|
{:plug_content_security_policy, "~> 0.2.1"},
|
2022-09-13 11:36:28 +12:00
|
|
|
# Live Dashboard
|
|
|
|
{:phoenix_live_dashboard, "~> 0.6"},
|
|
|
|
{:ecto_psql_extras, "~> 0.6"},
|
2022-10-05 15:13:49 +13:00
|
|
|
{:phoenix_ecto, "~> 4.4"},
|
2022-03-29 11:05:19 +13:00
|
|
|
# Phoenix/Core dependencies
|
2023-01-13 17:52:58 +13:00
|
|
|
{:phoenix, "~> 1.7.0-rc.1", override: true},
|
2022-12-21 20:25:09 +13:00
|
|
|
{:phoenix_view, "~> 2.0"},
|
2022-03-21 17:43:24 +13:00
|
|
|
{:ecto_sql, "~> 3.6"},
|
|
|
|
{:postgrex, ">= 0.0.0"},
|
|
|
|
{:phoenix_html, "~> 3.0"},
|
|
|
|
{:phoenix_live_reload, "~> 1.2", only: :dev},
|
2022-10-05 09:24:14 +13:00
|
|
|
{:phoenix_live_view, "~> 0.18"},
|
2022-03-26 10:17:01 +13:00
|
|
|
{:finch, "~> 0.10.2"},
|
2022-08-06 14:08:23 +12:00
|
|
|
{:floki, ">= 0.30.0"},
|
2023-01-24 03:15:40 +13:00
|
|
|
{:esbuild, "~> 0.3", runtime: false},
|
2022-03-21 17:43:24 +13:00
|
|
|
{:telemetry_metrics, "~> 0.6"},
|
|
|
|
{:telemetry_poller, "~> 1.0"},
|
|
|
|
{:gettext, "~> 0.18"},
|
|
|
|
{:jason, "~> 1.2"},
|
2022-07-15 08:44:20 +12:00
|
|
|
{:plug_cowboy, "~> 2.5"},
|
2022-08-07 11:22:58 +12:00
|
|
|
# Build/Check dependencies
|
2022-11-17 08:47:43 +13:00
|
|
|
{:git_ops, "~> 2.5", only: :dev},
|
2022-08-07 11:22:58 +12:00
|
|
|
{:ex_doc, "~> 0.23", only: :dev, runtime: false},
|
|
|
|
{:ex_check, "~> 0.14", only: :dev},
|
|
|
|
{:credo, ">= 0.0.0", only: :dev, runtime: false},
|
|
|
|
{:dialyxir, ">= 0.0.0", only: :dev, runtime: false},
|
|
|
|
{:sobelow, ">= 0.0.0", only: :dev, runtime: false},
|
2022-09-30 05:56:07 +13:00
|
|
|
{:excoveralls, "~> 0.14", only: [:dev, :test]},
|
|
|
|
{:eflame, "~> 1.0", only: [:dev, :test]}
|
2022-03-21 17:43:24 +13:00
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
# Aliases are shortcuts or tasks specific to the current project.
|
|
|
|
# For example, to install project dependencies and perform other setup tasks, run:
|
|
|
|
#
|
|
|
|
# $ mix setup
|
|
|
|
#
|
|
|
|
# See the documentation for `Mix` for more info on aliases.
|
|
|
|
defp aliases do
|
|
|
|
[
|
2022-09-16 10:35:33 +12:00
|
|
|
seed: ["run priv/repo/seeds.exs"],
|
2022-11-01 07:21:50 +13:00
|
|
|
setup: [
|
|
|
|
"ash_postgres.create",
|
|
|
|
"ash_postgres.migrate",
|
2023-01-23 17:03:12 +13:00
|
|
|
"seed"
|
2022-11-01 07:21:50 +13:00
|
|
|
],
|
2022-03-26 10:17:01 +13:00
|
|
|
reset: ["drop", "setup"],
|
2022-08-07 11:22:58 +12:00
|
|
|
credo: "credo --strict",
|
2022-03-26 10:17:01 +13:00
|
|
|
drop: ["ash_postgres.drop"],
|
2022-03-21 17:43:24 +13:00
|
|
|
test: ["ecto.create --quiet", "ecto.migrate --quiet", "test"],
|
2022-08-16 13:23:59 +12:00
|
|
|
sobelow: ["sobelow --skip -i Config.Headers,Config.CSRFRoute"],
|
2022-03-26 10:17:01 +13:00
|
|
|
"assets.deploy": [
|
2022-08-23 11:44:21 +12:00
|
|
|
"cmd --cd assets npm install && npm run deploy",
|
2022-03-26 10:17:01 +13:00
|
|
|
"esbuild default --minify",
|
|
|
|
"phx.digest"
|
|
|
|
]
|
2022-03-21 17:43:24 +13:00
|
|
|
]
|
|
|
|
end
|
|
|
|
end
|