Packages
duskmoon_quickbeam
9.16.13
10.0.8
10.0.7
10.0.6
10.0.5
10.0.4
10.0.3
10.0.2
10.0.1
10.0.0
9.16.16
9.16.15
9.16.14
9.16.13
9.16.12
9.16.11
9.16.10
9.16.9
9.16.7
9.16.6
9.16.2
9.16.1
9.16.0
9.14.0
9.13.1
9.13.0
9.12.3
9.12.2
9.12.1
9.12.0
9.11.0
9.10.1
9.10.0
9.9.10
9.9.9
9.9.8
9.9.7
9.9.6
9.9.4
9.9.3
9.9.2
9.9.1
9.9.0
9.8.0
9.7.1
9.7.0
9.6.4
9.6.3
9.6.2
9.6.1
9.6.0
Duskmoon fork of QuickBEAM — JavaScript runtime for the BEAM with Web APIs backed by OTP.
Current section
Files
Jump to
Current section
Files
duskmoon_quickbeam
mix.exs
mix.exs
defmodule QuickBEAM.MixProject do
use Mix.Project
@version "9.16.13"
@source_url "https://github.com/duskmoon-dev/phoenix-duskmoon-ui"
@upstream_url "https://github.com/elixir-volt/quickbeam"
def project do
[
app: :duskmoon_quickbeam,
version: @version,
elixir: ">= 1.18.0",
start_permanent: Mix.env() == :prod,
deps: deps(),
aliases: aliases(),
dialyzer: [plt_add_apps: [:crypto, :inets, :ssl, :public_key]],
name: "DuskmoonQuickBEAM",
description:
"Duskmoon fork of QuickBEAM — JavaScript runtime for the BEAM with Web APIs backed by OTP.",
source_url: @source_url,
homepage_url: @source_url,
package: package(),
docs: docs(),
test_coverage: [tool: QuickBEAM.Cover, ignore_modules: [QuickBEAM.Native.Manifest]]
]
end
def application do
[
extra_applications: [:logger, :inets, :ssl, :public_key, :xmerl],
mod: {QuickBEAM.Application, []}
]
end
def cli do
[preferred_envs: [ci: :test]]
end
defp aliases do
[
lint: [
"format --check-formatted",
"credo --strict",
"ex_dna",
"cmd zlint lib/quickbeam/*.zig lib/quickbeam/napi/*.zig",
"cmd npx oxlint -c oxlint.json --type-aware --type-check priv/ts/",
"cmd sh -c \"npx jscpd priv/ts/*.ts --min-tokens 50 --threshold 0\""
],
ci: [
"compile --warnings-as-errors",
"format --check-formatted",
"credo --strict",
"dialyzer",
"ex_dna",
"cmd zlint lib/quickbeam/*.zig lib/quickbeam/napi/*.zig",
"cmd npx oxlint -c oxlint.json --type-aware --type-check priv/ts/",
"cmd sh -c \"npx jscpd priv/ts/*.ts --min-tokens 50 --threshold 0\"",
"test --no-start --exclude napi_addon --exclude napi_sqlite"
],
"fuzz.sanity": "cmd --cd fuzz zig build test"
]
end
defp deps do
[
{:zigler_precompiled, "~> 0.1.4", runtime: false},
{:zigler, "~> 0.16.0", optional: true, runtime: false},
{:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false},
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
{:ex_dna, "~> 1.1", only: [:dev, :test], runtime: false},
{:ex_slop, "~> 0.2", only: [:dev, :test], runtime: false},
{:jason, "~> 1.4"},
{:duskmoon_oxc, "~> 9.16.13"},
{:rustler, "~> 0.36 or ~> 0.37 or ~> 0.38", optional: true, runtime: false},
{:duskmoon_npm, "~> 9.16.13", optional: true},
{:http_fetch, "~> 0.20.0"},
{:http_event_source, "~> 0.20.0"},
{:http_web_socket, "~> 0.20.0"},
{:bandit, "~> 1.0", only: :test},
{:websock_adapter, "~> 0.5", only: :test},
{:nimble_pool, "~> 1.1"},
]
end
defp package do
[
licenses: ["MIT"],
links: %{
"GitHub" => @source_url,
"Upstream" => @upstream_url
},
files: ~w[
lib priv/c_src priv/ts
mix.exs README.md LICENSE CHANGELOG.md
checksum-QuickBEAM.Native.exs
.formatter.exs
]
]
end
defp docs do
[
main: "QuickBEAM",
extras: [
"README.md",
"docs/javascript-api.md",
"docs/architecture.md",
"CHANGELOG.md"
],
groups_for_extras: [
Guides: ["docs/javascript-api.md", "docs/architecture.md"]
],
source_ref: "v#{@version}"
]
end
end