defmodule TeltonikaCodec.MixProject do use Mix.Project @version "0.1.0" @source_url "https://github.com/neilberkman/teltonika_codec" def project do [ app: :teltonika_codec, name: "TeltonikaCodec", version: @version, elixir: "~> 1.14", source_url: @source_url, homepage_url: @source_url, description: description(), package: package(), deps: deps(), docs: docs(), test_coverage: [tool: ExCoveralls] ] end def cli do [ preferred_envs: [coveralls: :test] ] end def application do [extra_applications: [:logger]] end defp deps do [ {:ex_doc, "~> 0.39", only: :dev, runtime: false}, {:excoveralls, "~> 0.18", only: :test}, {:credo, "~> 1.7", only: [:dev, :test], runtime: false}, {:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false}, {:quokka, "~> 2.11", only: :dev} ] end defp description do """ Teltonika GPS tracker protocol parser for Elixir. Decodes Codec 8, Codec 8 Extended, and Codec 16 binary protocols used by Teltonika devices (TAT141, FMB920, FMC130, etc.). """ end defp package do [ files: ["lib", "mix.exs", "README*", "LICENSE", "CHANGELOG.md"], maintainers: ["Neil Berkman"], licenses: ["Apache-2.0"], links: %{ "Changelog" => "https://hexdocs.pm/teltonika_codec/changelog.html", "GitHub" => @source_url } ] end defp docs do [ extras: [ "README.md", "CHANGELOG.md" ], main: "readme", source_ref: "v#{@version}", source_url: @source_url, groups_for_extras: [ Changelog: ~r/CHANGELOG\.md/ ], groups_for_modules: [ Core: [ TeltonikaCodec, TeltonikaCodec.Codec8, TeltonikaCodec.Codec8Extended, TeltonikaCodec.Codec16 ], Internal: [TeltonikaCodec.CRC, TeltonikaCodec.IMEI] ] ] end end