Current section
Files
Jump to
Current section
Files
mix.exs
defmodule Synapse.MixProject do
use Mix.Project
def project do
[
app: :synapse,
version: "0.1.1",
elixir: "~> 1.15",
elixirc_paths: elixirc_paths(Mix.env()),
start_permanent: Mix.env() == :prod,
name: "Synapse",
description: description(),
source_url: "https://github.com/nshkrdotcom/synapse",
homepage_url: "https://github.com/nshkrdotcom/synapse",
docs: docs(),
package: package(),
aliases: aliases(),
deps: deps(),
dialyzer: [
plt_file: {:no_warn, "priv/plts/dialyzer.plt"},
plt_add_apps: [:mix, :ex_unit],
ignore_warnings: "dialyzer.ignore-warnings.exs"
]
]
end
# Configuration for the OTP application.
#
# Type `mix help compile.app` for more information.
def application do
[
mod: {Synapse.Application, []},
extra_applications: [:logger, :runtime_tools]
]
end
def cli do
[
preferred_envs: [precommit: :test]
]
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
[
{:gettext, "~> 0.26"},
{:jason, "~> 1.2"},
{:dns_cluster, "~> 0.2.0"},
{:bandit, "~> 1.5"},
{:ecto_sql, "~> 3.11"},
{:postgrex, "~> 0.17"},
{:jido, "~> 1.0"},
{:req, "~> 0.5"},
{:nimble_options, "~> 1.0"},
{:ex_doc, "~> 0.34", only: :dev, runtime: false},
{:supertester, "~> 0.2.1", only: :test},
{:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false}
]
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
[
setup: ["deps.get"],
precommit: [
"compile --warning-as-errors",
"deps.unlock --unused",
"format",
"dialyzer",
"test"
]
]
end
defp description do
"Declarative, headless multi-agent runtime for code review orchestration with signals, workflows, and Postgres persistence."
end
defp package do
[
licenses: ["MIT"],
links: %{
"GitHub" => "https://github.com/nshkrdotcom/synapse",
"Changelog" => "https://github.com/nshkrdotcom/synapse/blob/v0.1.1/CHANGELOG.md",
"License" => "https://github.com/nshkrdotcom/synapse/blob/v0.1.1/LICENSE"
},
files: [
"lib",
"priv",
"docs",
"mix.exs",
"README.md",
"CHANGELOG.md",
"LICENSE"
]
]
end
defp docs do
[
main: "readme",
source_ref: "v0.1.1",
extras: [
"README.md",
"CHANGELOG.md",
"LICENSE",
"docs/guides/custom-domains.md",
"docs/guides/migration-0.1.1.md"
],
assets: %{"assets" => "assets"}
]
end
end