2022-03-21 17:43:24 +13:00
|
|
|
defmodule AshHq.MixProject do
|
|
|
|
use Mix.Project
|
|
|
|
|
|
|
|
def project do
|
|
|
|
[
|
|
|
|
app: :ash_hq,
|
|
|
|
version: "0.1.0",
|
|
|
|
elixir: "~> 1.12",
|
|
|
|
elixirc_paths: elixirc_paths(Mix.env()),
|
2022-07-22 05:58:51 +12:00
|
|
|
compilers: Mix.compilers(),
|
2022-03-21 17:43:24 +13:00
|
|
|
start_permanent: Mix.env() == :prod,
|
|
|
|
aliases: aliases(),
|
|
|
|
deps: deps()
|
|
|
|
]
|
|
|
|
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},
|
2022-10-23 00:51:22 +13:00
|
|
|
{:ash_postgres, "~> 1.1"},
|
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-09-16 10:35:33 +12:00
|
|
|
{:absinthe_plug, "~> 1.5"},
|
2022-11-01 20:20:09 +13:00
|
|
|
{:ash_blog, github: "ash-project/ash_blog"},
|
|
|
|
{:ash_csv, github: "ash-project/ash_csv"},
|
2022-10-12 08:19:19 +13:00
|
|
|
{:tails, github: "zachdaniel/tails"},
|
2022-06-05 08:58:50 +12:00
|
|
|
{:earmark, "~> 1.5.0-pre1", 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-10-26 17:53:18 +13:00
|
|
|
{:ua_inspector, "~> 3.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
|
2022-10-23 00:51:22 +13:00
|
|
|
{:phoenix, "~> 1.6.14"},
|
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
|
|
|
{:nimble_options, "~> 0.4.0", override: true},
|
|
|
|
{:finch, "~> 0.10.2"},
|
2022-08-06 14:08:23 +12:00
|
|
|
{:floki, ">= 0.30.0"},
|
2022-03-21 17:43:24 +13:00
|
|
|
{:esbuild, "~> 0.3", runtime: Mix.env() == :dev},
|
|
|
|
{: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-06 14:08:23 +12:00
|
|
|
# Dependencies
|
2022-11-01 20:20:09 +13:00
|
|
|
{:elixir_sense,
|
|
|
|
github: "elixir-lsp/elixir_sense",
|
|
|
|
ref: "85d4a87d216678dae30f348270eb90f9ed49ce20",
|
|
|
|
only: [:dev, :test]},
|
2022-08-07 11:22:58 +12:00
|
|
|
# Build/Check dependencies
|
|
|
|
{:git_ops, "~> 2.4.4", only: :dev},
|
|
|
|
{: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",
|
|
|
|
"seed",
|
|
|
|
"ua_inspector.download --force"
|
|
|
|
],
|
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
|