defmodule Foundry.MixProject do use Mix.Project def project do [ app: :foundry, version: "0.1.0", build_path: "../../_build", config_path: "../../config/config.exs", deps_path: "../../deps", lockfile: "../../mix.lock", elixir: "~> 1.15", elixirc_paths: elixirc_paths(Mix.env()), start_permanent: Mix.env() == :prod, aliases: aliases(), deps: deps(), description: description(), package: package() ] end defp description() do "A governed build environment for Elixir/Ash/Phoenix platforms with system map extraction, governance lint, and runtime health monitoring." end defp package do [ name: :foundry_stack, licenses: ["Apache-2.0"], links: %{ "GitHub" => "https://github.com/FoundryStack/foundry" } ] end # Configuration for the OTP application. # # Type `mix help compile.app` for more information. def application do [ mod: {Foundry.Application, []}, extra_applications: [:logger, :runtime_tools] ] 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 [ {:ash, "~> 3.20"}, {:ash_ai, "~> 0.6"}, {:ash_state_machine, "~> 0.2"}, {:ash_paper_trail, "~> 0.5"}, {:ash_archival, "~> 2.0"}, {:ash_diagram, "~> 0.1"}, {:ash_json_api, "~> 1.6"}, {:picosat_elixir, "~> 0.2"}, {:dns_cluster, "~> 0.2.0"}, {:phoenix_pubsub, "~> 2.1"}, {:jason, "~> 1.4"}, {:swoosh, "~> 1.23"}, {:req, "~> 0.5"}, {:req_llm, "~> 1.0"}, {:muontrap, "~> 1.8"}, {:ex_tracer, "~> 0.1"}, {:scenario_tracer, "~> 0.1"}, {:spark_meta, "~> 0.1"}, {:spark_lint, "~> 0.1"} # {:scenario_tracer, path: "../../packages/scenario_tracer"}, # {:spark_meta, path: "../../packages/spark_meta"}, # {:spark_lint, path: "../../packages/spark_lint"} ] end # Aliases are shortcuts or tasks specific to the current project. # # See the documentation for `Mix` for more info on aliases. defp aliases do [ setup: ["deps.get"], test: ["test"] ] end end