defmodule Sashite.Pmn.MixProject do use Mix.Project @version "1.2.0" @source_url "https://github.com/sashite/pmn.ex" def project do [ app: :sashite_pmn, version: @version, elixir: "~> 1.14", start_permanent: Mix.env() == :prod, description: description(), package: package(), deps: deps(), # Documentation name: "Sashite.Pmn", source_url: @source_url, homepage_url: "https://sashite.dev/specs/pmn/", docs: [ main: "readme", extras: ["README.md", "LICENSE"] ] ] end def application do [ extra_applications: [:logger] ] end defp deps do [ {:sashite_cell, "~> 3.0"}, {:sashite_epin, "~> 1.2"}, {:credo, "~> 1.7", only: [:dev, :test], runtime: false}, {:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.31", only: :dev, runtime: false} ] end defp description do """ PMN (Portable Move Notation) implementation for Elixir. Provides parsing and validation of protocol-level Moves as ordered sequences of Actions in abstract strategy board games. """ end defp package do [ name: "sashite_pmn", files: ~w(lib .formatter.exs mix.exs README.md LICENSE), licenses: ["Apache-2.0"], links: %{ "GitHub" => @source_url, "Specification" => "https://sashite.dev/specs/pmn/1.0.0/", "Documentation" => "https://hexdocs.pm/sashite_pmn" }, maintainers: ["Cyril Kato"] ] end end