Packages

Scaffolder for Elixir/Phoenix projects with a Svelte 5 UI layer.

Current section

Files

Jump to
svelixir mix.exs
Raw

mix.exs

defmodule Svelixir.MixProject do
use Mix.Project
def project do
[
app: :svelixir,
version: "0.2.0",
elixir: "~> 1.20",
description: description(),
package: package(),
start_permanent: Mix.env() == :prod,
deps: deps(),
aliases: aliases(),
elixirc_paths: elixirc_paths(Mix.env()),
test_coverage: [tool: ExCoveralls, coveralls_json: "coveralls.json"],
dialyzer: [
plt_file: {:no_warn, "priv/plts/dialyzer.plt"},
plt_add_apps: [:mix],
flags: [:error_handling, :underspecs]
]
]
end
defp description do
"Mix task that scaffolds new Elixir/Phoenix + Svelte (LiveSvelte) projects from a TOML config."
end
defp package do
[
licenses: ["MIT"],
links: %{"GitHub" => "https://github.com/wimwian-org/svelixir"},
files: ~w(lib priv/templates mix.exs README.md LICENSE)
]
end
def cli do
[
preferred_envs: [
coveralls: :test,
"coveralls.detail": :test,
"coveralls.post": :test,
"coveralls.html": :test,
"coveralls.lcov": :test
]
]
end
# Run "mix help compile.app" to learn about applications.
def application do
[
extra_applications: [:logger]
]
end
defp aliases do
[
lint: ["credo --strict", "dialyzer"],
check: ["lint", "doctor"]
]
end
# Run "mix help deps" to learn about dependencies.
defp deps do
[
{:igniter, "~> 0.8.3"},
{:toml, "~> 0.6.0"},
{:jason, "~> 1.4"},
{:ex_doc, "~> 0.30", only: :dev, runtime: false},
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
{:dialyxir, "~> 1.4.7", only: [:dev, :test], runtime: false},
{:excoveralls, "~> 0.16", only: [:dev, :test]},
{:doctor, "~> 0.22", only: [:dev, :test], runtime: false},
{:req, "~> 0.5"},
{:ex_machina, "~> 2.8", only: :test}
]
end
defp elixirc_paths(:test), do: ["lib", "test/support"]
defp elixirc_paths(_), do: ["lib"]
end