[package]
edition = "2024"
rust-version = "1.92"
name = "mbr-markdown-browser"
version = "0.7.0"
authors = ["Patrick Walsh <pwalsh@well.com>"]
build = false
include = [
"src/**/*",
"uniffi-bindgen.rs",
"mbr-icon.png",
"/LICENSE",
"/README.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
default-run = "mbr"
description = "A fast, featureful markdown viewer, browser, and (optional) static site generator"
homepage = "https://github.com/zmre/mbr-markdown-browser/"
documentation = "https://zmre.github.io/mbr-markdown-browser/"
readme = "README.md"
keywords = [
"markdown",
"gui",
"cli",
"productivity",
"static",
]
categories = [
"command-line-utilities",
"gui",
"template-engine",
]
license = "GPL-3.0-or-later"
repository = "https://github.com/zmre/mbr-markdown-browser/"
[features]
cli = [
"server",
"ssg",
"dep:clap",
"dep:rpassword",
"dep:tracing-subscriber",
]
default = [
"gui",
"media-metadata",
"server",
"watcher",
"ssg",
"cli",
]
ffi = [
"dep:mbr-ffi",
"dep:uniffi",
]
ffmpeg-static = ["mbr-core/ffmpeg-static"]
gui = [
"server",
"dep:wry",
"dep:tao",
"dep:muda",
"dep:rfd",
"dep:image",
"dep:objc2-app-kit",
"dep:objc2-foundation",
"dep:windows-sys",
"dep:gio",
"dep:gtk",
]
media-metadata = [
"mbr-core/media-metadata",
"mbr-server?/media-metadata",
"dep:ffmpeg-next",
]
server = ["dep:mbr-server"]
ssg = ["dep:mbr-ssg"]
watcher = [
"dep:mbr-server",
"mbr-server/watcher",
]
[lib]
name = "mbr"
path = "src/lib.rs"
bench = false
[[bin]]
name = "mbr"
path = "src/main.rs"
bench = false
required-features = ["cli"]
[[bin]]
name = "uniffi-bindgen"
path = "uniffi-bindgen.rs"
bench = false
required-features = ["ffi"]
[dependencies.clap]
version = "4.5"
features = ["derive"]
optional = true
[dependencies.ffmpeg-next]
version = "7.1"
optional = true
[dependencies.image]
version = "0.25.8"
features = [
"png",
"jpeg",
"gif",
"webp",
]
optional = true
default-features = false
[dependencies.mbr-core]
version = "=0.7.0"
[dependencies.mbr-ffi]
version = "=0.7.0"
optional = true
[dependencies.mbr-server]
version = "=0.7.0"
optional = true
[dependencies.mbr-ssg]
version = "=0.7.0"
optional = true
[dependencies.muda]
version = "0.21"
optional = true
[dependencies.parking_lot]
version = "0.12"
[dependencies.pathdiff]
version = "0.2.3"
[dependencies.percent-encoding]
version = "2.3"
[dependencies.rfd]
version = "0.17"
optional = true
[dependencies.rpassword]
version = "7"
optional = true
[dependencies.tao]
version = "0.37.0"
optional = true
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.53"
features = [
"rt-multi-thread",
"macros",
"sync",
"time",
"net",
"fs",
"io-util",
]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
optional = true
[dependencies.url]
version = "2.5"
[dependencies.wry]
version = "0.57"
features = ["devtools"]
optional = true
[dev-dependencies.chrono]
version = "0.4"
features = [
"std",
"clock",
"serde",
]
default-features = false
[dev-dependencies.criterion]
version = "0.8"
features = ["async_tokio"]
[dev-dependencies.filetime]
version = "0.2"
[dev-dependencies.flate2]
version = "1.0"
[dev-dependencies.papaya]
version = "0.2.4"
[dev-dependencies.proptest]
version = "1.11"
[dev-dependencies.pulldown-cmark]
version = "0.13"
features = [
"html",
"simd",
]
default-features = false
[dev-dependencies.rayon]
version = "1.11"
[dev-dependencies.reqwest]
version = "0.13"
features = [
"rustls-no-provider",
"json",
"stream",
]
default-features = false
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.tempfile]
version = "3.27"
[target.'cfg(target_os = "linux")'.dependencies.gio]
version = "0.22"
optional = true
[target.'cfg(target_os = "linux")'.dependencies.gtk]
version = "0.18"
optional = true
[target.'cfg(target_os = "linux")'.dependencies.muda]
version = "0.21"
features = ["gtk3"]
optional = true
[target.'cfg(target_os = "macos")'.dependencies.objc2-app-kit]
version = "0.3.2"
features = [
"std",
"NSWorkspace",
]
optional = true
default-features = false
[target.'cfg(target_os = "macos")'.dependencies.objc2-foundation]
version = "0.3.2"
features = [
"std",
"NSString",
"NSURL",
]
optional = true
default-features = false
[target.'cfg(target_os = "windows")'.dependencies.windows-sys]
version = "0.61.2"
features = [
"Win32_Foundation",
"Win32_UI_Shell",
"Win32_UI_WindowsAndMessaging",
]
optional = true
[target.'cfg(target_vendor = "apple")'.dependencies.uniffi]
version = "0.31"
features = ["cli"]
optional = true
[profile.release]
opt-level = 3
lto = true
codegen-units = 16
panic = "abort"
strip = "debuginfo"