Packages
moon
2.90.4
2.90.5
retired
2.90.4
2.90.3
2.90.2
2.90.1
2.90.0
2.89.4
2.89.1
2.89.0
2.88.0
2.87.11
2.87.10
2.87.9
2.87.8
2.87.7
2.87.6
2.87.5
2.87.4
2.87.3
2.87.2
2.87.1
2.87.0
2.86.1
2.86.0
2.85.1
2.85.0
2.84.0
2.83.0
2.82.0
2.81.4
2.81.3
2.81.2
2.81.1
2.81.0
2.80.2
2.80.1
2.80.0
2.79.13
2.79.12
2.79.11
2.79.10
2.79.9
2.79.8
2.79.7
2.79.6
2.79.5
2.79.4
2.79.3
2.79.2
2.79.1
2.79.0
2.78.4
2.78.3
2.78.2
2.78.1
2.78.0
2.77.0
2.76.5
2.76.4
2.76.3
2.76.2
2.76.1
2.76.0
2.75.0
2.74.1
2.74.0
2.73.8
2.73.7
2.73.6
2.73.5
2.73.4
2.73.3
2.73.2
2.73.1
2.73.0
2.72.5
2.72.4
2.72.3
2.72.2
2.72.1
2.72.0
2.71.1
2.71.0
2.70.0
2.69.2
2.69.1
2.69.0
2.68.11
2.68.10
Components-based design system written in elixir
Current section
Files
Jump to
Current section
Files
mix.exs
defmodule Moon.MixProject do
use Mix.Project
@version (case File.read("VERSION") do
{:ok, version} -> String.trim(version)
{:error, _} -> "ERROR"
end)
def project do
[
app: :moon,
version: @version,
elixir: "~> 1.11",
elixirc_paths: elixirc_paths(Mix.env()),
compilers: Mix.compilers() ++ [:surface],
start_permanent: Mix.env() == :prod,
aliases: aliases(),
deps: deps(),
test_coverage: [tool: ExCoveralls],
preferred_cli_env: [
coveralls: :test,
"coveralls.detail": :test,
"coveralls.post": :test,
"coveralls.html": :test
],
package: package(),
# docs
name: "Moon",
source_url: "https://github.com/coingaming/moon",
homepage_url: "https://github.com/coingaming/moon/tree/v#{@version}",
docs: [
source_ref: "v#{@version}"
]
]
end
# Configuration for the OTP application.
#
# Type `mix help compile.app` for more information.
def application do
((Code.ensure_compiled(MoonWeb.Application) && [{:mod, {MoonWeb.Application, []}}]) || []) ++
[extra_applications: [:logger, :runtime_tools]]
end
defp package do
[
licenses: ["MIT"],
files: [
"lib",
"config/surface.exs",
"assets",
"priv/static/{themes,fonts}",
"priv/templates",
"mix.exs",
"README.md",
"CHANGELOG.md",
"VERSION"
],
links: %{
"GitHub" => "https://github.com/coingaming/moon/tree/v#{@version}"
},
description: "Components-based design system written in elixir"
]
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
[
{:phoenix, ">= 1.6.15"},
{:phoenix_live_view, "~> 0.20"},
{:phoenix_html, "~> 3.0"},
{:phoenix_live_dashboard, ">= 0.7.0"},
{:phoenix_ecto, "~> 4.0"},
{:ecto_sql, "~> 3.1"},
{:faker, "~> 0.17"},
{:gettext, "~> 0.21"},
{:jason, "~> 1.0"},
{:plug_cowboy, "~> 2.0"},
{:vega_lite, "~> 0.1.0"},
{:surface, "~> 0.11.0"},
{:timex, "~> 3.6"},
{:distillery, "~> 2.1"},
{:moon_icons, "~> 0.3"},
{:esbuild, "~> 0.7", runtime: Mix.env() == :dev},
{:tails, "~> 0.1.7"},
# test
{:excoveralls, "~> 0.10", only: :test},
{:floki, ">= 0.27.0", only: :test},
{:snapshy, "~> 0.3.0", only: :test},
# dev
{:credo, "~> 1.5", only: [:dev, :test], runtime: false},
{:phoenix_live_reload, "~> 1.2", only: :dev},
{:surface_formatter, "~> 0.7.0", only: [:dev, :test], runtime: false},
{:dialyxir, "~> 1.0", only: [:dev, :test], runtime: false},
{:ex_doc, ">= 0.0.0", 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", "assets.setup", "compile", "assets.build"],
"assets.setup": ["cmd --cd assets npm i", "esbuild.install --if-missing"],
"assets.build": ["cmd --cd assets npm run build", "esbuild default"],
"assets.clean": ["cmd rm -rf assets/node_modules", "phx.digest.clean --all"],
"assets.deploy": [
"cmd --cd assets npm run deploy",
"esbuild default --minify",
"phx.digest"
],
"check-quality": [
"compile --all-warnings --warnings-as-errors",
"format --check-formatted",
"credo"
],
fromat: ["format"],
"semantic.release": [
"cmd npm i",
"cmd npx semantic-release --extends ./scripts/deploy/semantic-release.js"
]
]
end
end