Current section
Files
Jump to
Current section
Files
mix.exs
defmodule Deepgram.MixProject do
use Mix.Project
@version "0.1.0"
@description "Elixir SDK for Deepgram's speech-to-text, text-to-speech, text intelligence, and AI voice agent services"
@source_url "https://github.com/alexfilatov/deepgram-elixir-sdk"
@homepage_url "https://www.deepgram.com"
def project do
[
app: :deepgram,
version: @version,
elixir: "~> 1.14",
start_permanent: Mix.env() == :prod,
deps: deps(),
description: @description,
package: package(),
source_url: @source_url,
homepage_url: @homepage_url,
name: "Deepgram",
docs: docs(),
aliases: aliases()
]
end
def application do
[
extra_applications: [:logger, :crypto]
]
end
defp deps do
[
{:httpoison, "~> 2.0"},
{:jason, "~> 1.4"},
{:websockex, "~> 0.4"},
{:ex_doc, "~> 0.30", only: :dev, runtime: false},
{:dialyxir, "~> 1.4", only: [:dev], runtime: false},
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
{:mox, "~> 1.0", only: :test}
]
end
defp package do
[
maintainers: ["Alex Filatov", "Contributors"],
licenses: ["MIT"],
links: %{
"GitHub" => @source_url,
"Deepgram API Docs" => "https://developers.deepgram.com/",
"Deepgram" => @homepage_url
},
files: [
"lib",
"mix.exs",
"README.md",
"LICENSE",
"CHANGELOG.md"
],
exclude_patterns: [
"priv/tmp",
"priv/static"
]
]
end
defp docs do
[
main: "Deepgram",
source_ref: "v#{@version}",
canonical: "http://hexdocs.pm/deepgram",
extras: [
"README.md",
"CHANGELOG.md"
],
groups_for_extras: [
Introduction: ~r/README/,
Guides: ~r/guides/
],
groups_for_modules: [
Core: [Deepgram, Deepgram.Client, Deepgram.Config],
Services: [
Deepgram.Listen,
Deepgram.Speak,
Deepgram.Read,
Deepgram.Agent,
Deepgram.Manage
],
Types: [
Deepgram.Types.Listen,
Deepgram.Types.Speak,
Deepgram.Types.Read,
Deepgram.Types.Agent,
Deepgram.Types.Manage
],
Errors: [Deepgram.Error],
WebSocket: [Deepgram.Listen.WebSocket, Deepgram.Speak.WebSocket, Deepgram.Agent.WebSocket]
]
]
end
defp aliases do
[
lint: ["format", "credo --strict"],
test_all: ["test", "dialyzer"],
docs: ["docs", ©_assets/1]
]
end
# Copy assets for documentation
defp copy_assets(_) do
File.mkdir_p!("doc/assets")
# Add any assets copy operations here if needed
:ok
end
end