1defmodule Atex.MixProject do
2 use Mix.Project
3
4 @version "0.4.0"
5 @github "https://github.com/cometsh/atex"
6 @tangled "https://tangled.sh/@comet.sh/atex"
7
8 def project do
9 [
10 app: :atex,
11 version: @version,
12 elixir: "~> 1.18",
13 start_permanent: Mix.env() == :prod,
14 deps: deps(),
15 name: "atex",
16 description: "A set of utilities for working with the AT Protocol in Elixir.",
17 package: package(),
18 docs: docs()
19 ]
20 end
21
22 def application do
23 [
24 extra_applications: [:logger],
25 mod: {Atex.Application, []}
26 ]
27 end
28
29 defp deps do
30 [
31 {:peri, "~> 0.6"},
32 {:multiformats_ex, "~> 0.2"},
33 {:recase, "~> 0.5"},
34 {:req, "~> 0.5"},
35 {:typedstruct, "~> 0.5"},
36 {:ex_cldr, "~> 2.42"},
37 {:credo, "~> 1.7", only: [:dev, :test], runtime: false},
38 {:ex_doc, "~> 0.34", only: :dev, runtime: false, warn_if_outdated: true},
39 {:plug, "~> 1.18"},
40 {:jose, git: "https://github.com/potatosalad/erlang-jose.git", ref: "main"},
41 {:bandit, "~> 1.0", only: [:dev, :test]}
42 ]
43 end
44
45 defp package do
46 [
47 licenses: ["MIT"],
48 links: %{"GitHub" => @github, "Tangled" => @tangled}
49 ]
50 end
51
52 defp docs do
53 [
54 extras: [
55 LICENSE: [title: "License"],
56 "README.md": [title: "Overview"]
57 ],
58 main: "readme",
59 source_url: @github,
60 source_ref: "v#{@version}",
61 formatters: ["html"]
62 ]
63 end
64end