Packages
High-performance Elixir wrapper for Signal Protocol cryptographic primitives with libsodium. Provides idiomatic APIs for key generation, digital signatures, encryption, and session management.
Current section
Files
Jump to
Current section
Files
libsignal_protocol
mix.exs
mix.exs
defmodule LibsignalProtocol.MixProject do
use Mix.Project
def project do
[
app: :libsignal_protocol,
version: "0.3.0",
elixir: "~> 1.15",
start_permanent: Mix.env() == :prod,
deps: deps(),
test_coverage: [tool: ExCoveralls, output: "tmp/cover"],
preferred_cli_env: [
coveralls: :test,
"coveralls.detail": :test,
"coveralls.post": :test,
"coveralls.html": :test,
"coveralls.github": :test
],
docs: [output: "tmp/doc"],
aliases: aliases(),
description:
"High-performance Elixir wrapper for Signal Protocol cryptographic primitives with libsodium. Provides idiomatic APIs for key generation, digital signatures, encryption, and session management.",
package: package(),
source_url: "https://github.com/hydepwns/libsignal-protocol-nif",
homepage_url: "https://hex.pm/packages/libsignal_protocol"
]
end
defp package do
[
name: "libsignal_protocol",
licenses: ["Apache-2.0"],
links: %{"GitHub" => "https://github.com/hydepwns/libsignal-protocol-nif"},
files: ~w(lib mix.exs README.md LICENSE),
maintainers: ["hydepwns"],
keywords: [
"signal",
"protocol",
"cryptography",
"encryption",
"security",
"nif",
"libsodium",
"curve25519",
"ed25519",
"aes-gcm"
]
]
end
def application do
[
extra_applications: [:logger]
]
end
defp deps do
[
# The Erlang NIF this wrapper is a facade over. Published from the same
# repo; its rebar3 post-compile hook fetches or builds priv/*.so.
{:libsignal_protocol_nif, "~> 0.3"},
{:castore, "~> 1.0"},
{:ex_doc, "~> 0.31", only: :dev, runtime: false},
{:excoveralls, "~> 0.18", only: :test},
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
{:dialyxir, "~> 1.3", only: [:dev], runtime: false}
]
end
defp aliases do
[
compile: ["compile"],
clean: ["clean"]
]
end
end