Packages
mdex
0.12.2
0.13.3
0.13.2
0.13.1
0.13.0
0.12.5
retired
0.12.4
0.12.3
0.12.2
0.12.1
0.12.0
0.11.7
0.11.6
0.11.5
0.11.4
0.11.3
0.11.2
0.11.1
0.11.0
0.10.0
0.9.4
0.9.3
0.9.2
0.9.1
0.9.0
0.8.6
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.2
0.6.1
0.6.0
0.5.0
0.4.3
0.4.2
0.4.1
0.4.0
0.3.3
0.3.2
0.3.1
0.3.0
0.2.0
0.1.18
0.1.17
0.1.16
0.1.15
0.1.14
0.1.13
0.1.12
0.1.11
0.1.10
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
Fast and extensible Markdown for Elixir
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
mix.exs
defmodule MDEx.MixProject do
use Mix.Project
@source_url "https://github.com/leandrocp/mdex"
@version "0.12.2"
def project do
[
app: :mdex,
version: @version,
elixir: "~> 1.15",
start_permanent: Mix.env() == :prod,
package: package(),
docs: docs(),
deps: deps(),
aliases: aliases(),
name: "MDEx",
homepage_url: "https://github.com/leandrocp/mdex",
description: "Fast and extensible Markdown for Elixir"
]
end
def application do
[
extra_applications: [:logger]
]
end
def cli do
[
preferred_envs: [
docs: :docs,
"hex.publish": :docs
]
]
end
defp package do
[
maintainers: ["Leandro Pereira"],
licenses: ["MIT"],
links: %{
GitHub: @source_url,
Changelog: "https://hexdocs.pm/mdex/changelog.html",
Site: "https://mdelixir.dev",
comrak: "https://crates.io/crates/comrak",
ammonia: "https://crates.io/crates/ammonia",
lumis: "https://lumis.sh"
},
files: ~w[
lib/mdex.ex
lib/mdex
native/comrak_nif/src
native/comrak_nif/.cargo
native/comrak_nif/Cargo.*
native/comrak_nif/Cross.toml
examples
guides
mix.exs
benchmark.exs
README.md
LICENSE.md
CHANGELOG.md
usage-rules.md
checksum-Elixir.MDEx.Native.exs
]
]
end
defp docs do
[
main: "MDEx",
logo: "assets/images/mdex_icon.png",
source_ref: "v#{@version}",
source_url: @source_url,
extras: [
"CHANGELOG.md",
"examples/gfm.livemd",
"examples/syntax_highlight.livemd",
"examples/light_dark_theme.livemd",
"examples/custom_theme.livemd",
"examples/code_block_decorators.livemd",
"examples/mermaid.livemd",
"examples/highlight_words.livemd",
"examples/liquid.livemd",
"examples/phoenix_live_view_heex.livemd",
"examples/sigil_md.livemd",
"examples/codefence_renderers.livemd",
{"guides/streaming.md", title: "Streaming"},
{"guides/plugins.md", title: "Plugins"},
{"guides/heex.md", title: "HEEx Integration"},
{"guides/compilation.md", title: "Compilation"},
{"guides/safety.md", title: "Safety"},
{"guides/code_block_decorators.md", title: "Code Block Decorators"}
],
groups_for_modules: [
"Document Nodes": [
MDEx.Alert,
MDEx.BlockQuote,
MDEx.Code,
MDEx.CodeBlock,
MDEx.DescriptionDetails,
MDEx.DescriptionItem,
MDEx.DescriptionList,
MDEx.DescriptionTerm,
MDEx.Emph,
MDEx.Escaped,
MDEx.EscapedTag,
MDEx.FootnoteDefinition,
MDEx.FootnoteReference,
MDEx.FrontMatter,
MDEx.Heading,
MDEx.Highlight,
MDEx.HtmlBlock,
MDEx.HtmlInline,
MDEx.Image,
MDEx.LineBreak,
MDEx.Link,
MDEx.List,
MDEx.ListItem,
MDEx.Math,
MDEx.MultilineBlockQuote,
MDEx.Paragraph,
MDEx.Raw,
MDEx.ShortCode,
MDEx.SoftBreak,
MDEx.SpoileredText,
MDEx.Strikethrough,
MDEx.Strong,
MDEx.Subscript,
MDEx.Subtext,
MDEx.Superscript,
MDEx.Table,
MDEx.TableCell,
MDEx.TableRow,
MDEx.TaskItem,
MDEx.Text,
MDEx.ThematicBreak,
MDEx.Underline,
MDEx.WikiLink,
MDEx.HeexBlock,
MDEx.HeexInline
]
],
groups_for_extras: [
Examples: [
"examples/gfm.livemd",
"examples/syntax_highlight.livemd",
"examples/light_dark_theme.livemd",
"examples/custom_theme.livemd",
"examples/code_block_decorators.livemd",
"examples/mermaid.livemd",
"examples/highlight_words.livemd",
"examples/liquid.livemd",
"examples/phoenix_live_view_heex.livemd",
"examples/sigil_md.livemd",
"examples/codefence_renderers.livemd"
],
Guides: [
"guides/streaming.md",
"guides/plugins.md",
"guides/heex.md",
"guides/compilation.md",
"guides/safety.md",
"guides/code_block_decorators.md"
]
],
skip_undefined_reference_warnings_on: ["CHANGELOG.md"]
]
end
defp deps do
[
{:rustler, "~> 0.32", optional: true},
{:rustler_precompiled, "~> 0.7"},
{:nimble_options, "~> 1.0"},
{:nimble_parsec, "~> 1.0"},
{:lumis, "~> 0.1"},
{:jason, "~> 1.0"},
{:phoenix_live_view, "~> 1.0", optional: true},
{:ex_doc, ">= 0.0.0", only: :docs}
]
end
defp aliases do
[
setup: ["deps.get", "compile"],
"gen.checksum": "rustler_precompiled.download MDEx.Native --all --print",
"gen.samples": "mdex.generate_samples",
"format.all": ["format", "rust.fmt"],
"rust.lint": ["cmd cargo clippy --manifest-path=native/comrak_nif/Cargo.toml -- -Dwarnings"],
"rust.fmt": ["cmd cargo fmt --manifest-path=native/comrak_nif/Cargo.toml --all"]
]
end
end