[package]
edition = "2024"
rust-version = "1.85.0"
name = "memvid-core"
version = "2.0.136"
build = false
include = [
"src/**/*",
"data/**/*",
"Cargo.toml",
"README.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core library for Memvid v2, a crash-safe, deterministic, single-file AI memory."
documentation = "https://docs.memvid.com"
readme = "README.md"
keywords = [
"ai",
"memory",
"search",
"vector",
"embeddings",
]
categories = [
"database",
"data-structures",
]
license = "Apache-2.0"
repository = "https://github.com/memvid/memvid"
resolver = "2"
[features]
accelerate = [
"candle-core/accelerate",
"candle-nn/accelerate",
"candle-transformers/accelerate",
]
api_embed = ["dep:reqwest"]
clip = [
"vec",
"dep:image",
"dep:ndarray",
"dep:rayon",
"dep:tokenizers",
]
cuda = [
"candle-core/cuda",
"candle-nn/cuda",
"candle-transformers/cuda",
]
default = [
"lex",
"pdf_extract",
"simd",
]
encryption = [
"dep:argon2",
"dep:aes-gcm",
"dep:rand",
"dep:zeroize",
]
extractous = ["dep:extractous"]
hnsw_bench = [
"dep:hnsw",
"dep:rand",
"dep:space",
"dep:rand_pcg",
]
lex = ["dep:tantivy"]
logic_mesh = [
"dep:ort",
"dep:ndarray",
"dep:tokenizers",
]
metal = [
"candle-core/metal",
"candle-nn/metal",
"candle-transformers/metal",
]
mmap = []
parallel_segments = [
"dep:num_cpus",
"dep:crossbeam-channel",
]
pdf_extract = ["dep:pdf-extract"]
pdf_oxide = ["dep:pdf_oxide"]
pdfium = ["dep:pdfium-render"]
replay = []
simd = ["dep:wide"]
symspell_cleanup = ["dep:symspell"]
temporal_enrich = ["dep:interim"]
temporal_track = []
vec = [
"dep:ort",
"dep:hnsw",
"dep:ndarray",
"dep:tokenizers",
"dep:space",
"dep:rand",
"dep:rand_pcg",
]
whisper = [
"dep:symphonia",
"dep:rubato",
"dep:tokenizers",
"dep:candle-core",
"dep:candle-nn",
"dep:candle-transformers",
"dep:hf-hub",
"dep:byteorder",
]
[lib]
name = "memvid_core"
path = "src/lib.rs"
[dependencies.aes-gcm]
version = "0.10"
optional = true
[dependencies.argon2]
version = "0.5"
optional = true
[dependencies.atomic-write-file]
version = "0.3"
[dependencies.base64]
version = "0.22.1"
[dependencies.bincode]
version = "2.0.1"
features = ["serde"]
[dependencies.blake3]
version = "1.5.1"
[dependencies.byteorder]
version = "1.5"
optional = true
[dependencies.calamine]
version = "0.22"
[dependencies.candle-core]
version = "0.9"
optional = true
[dependencies.candle-nn]
version = "0.9"
optional = true
[dependencies.candle-transformers]
version = "0.9"
optional = true
[dependencies.chrono]
version = "0.4.42"
features = ["serde"]
[dependencies.crossbeam-channel]
version = "0.5.13"
optional = true
[dependencies.dirs-next]
version = "2.0"
[dependencies.ed25519-dalek]
version = "2.2.0"
features = ["std"]
[dependencies.extractous]
version = "0.3"
optional = true
[dependencies.fs-err]
version = "3.2"
[dependencies.fs2]
version = "0.4.3"
[dependencies.hex]
version = "0.4.3"
[dependencies.hf-hub]
version = "0.4"
features = ["tokio"]
optional = true
[dependencies.hnsw]
version = "0.11.0"
features = ["serde"]
optional = true
[dependencies.image]
version = "0.25"
features = [
"jpeg",
"png",
"webp",
]
optional = true
default-features = false
[dependencies.interim]
version = "0.2.1"
optional = true
[dependencies.jsonwebtoken]
version = "10.0.0"
features = ["rust_crypto"]
optional = true
[dependencies.log]
version = "0.4.22"
[dependencies.lopdf]
version = "0.39"
[dependencies.lz4_flex]
version = "0.12.0"
[dependencies.memchr]
version = "2.7"
[dependencies.memmap2]
version = "0.9"
[dependencies.ndarray]
version = "0.16"
optional = true
[dependencies.num_cpus]
version = "1.17"
optional = true
[dependencies.once_cell]
version = "1.19.0"
[dependencies.ort]
version = "=2.0.0-rc.10"
optional = true
[dependencies.pdf-extract]
version = "0.10"
optional = true
[dependencies.pdf_oxide]
version = "0.3"
optional = true
[dependencies.pdfium-render]
version = "0.8.28"
optional = true
[dependencies.quick-xml]
version = "0.31"
[dependencies.rand]
version = "0.8"
features = ["serde1"]
optional = true
[dependencies.rand_pcg]
version = "0.3"
features = ["serde1"]
optional = true
[dependencies.rayon]
version = "1.10"
optional = true
[dependencies.regex]
version = "1.11.1"
[dependencies.reqwest]
version = "0.12"
features = [
"blocking",
"json",
"rustls-tls",
]
optional = true
default-features = false
[dependencies.rubato]
version = "0.15"
optional = true
[dependencies.rustfft]
version = "6.2"
optional = true
[dependencies.same-file]
version = "1.0"
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.145"
[dependencies.sha2]
version = "0.10.9"
[dependencies.smallvec]
version = "1.13"
features = [
"serde",
"union",
"const_generics",
"write",
]
[dependencies.space]
version = "0.17"
optional = true
[dependencies.symphonia]
version = "0.5.3"
features = [
"aac",
"mp3",
"flac",
"isomp4",
"ogg",
"wav",
"pcm",
]
optional = true
default-features = false
[dependencies.symspell]
version = "0.4"
optional = true
[dependencies.tantivy]
version = "0.25.0"
features = ["mmap"]
optional = true
default-features = false
[dependencies.tempfile]
version = "3.10.1"
[dependencies.thiserror]
version = "2.0.17"
[dependencies.time]
version = "0.3.36"
features = [
"formatting",
"parsing",
]
[dependencies.tokenizers]
version = "0.22"
optional = true
[dependencies.tracing]
version = "0.1.41"
[dependencies.unicode-normalization]
version = "0.1"
[dependencies.unicode-segmentation]
version = "1.11"
[dependencies.uuid]
version = "1.10.0"
features = [
"v4",
"serde",
]
[dependencies.wide]
version = "1.1"
optional = true
[dependencies.zeroize]
version = "1.7"
optional = true
[dependencies.zip]
version = "7.1"
features = ["deflate"]
default-features = false
[dependencies.zstd]
version = "0.13.1"
[dev-dependencies.criterion]
version = "0.8.1"
features = ["html_reports"]
[dev-dependencies.fastrand]
version = "2.0"
[dev-dependencies.tempfile]
version = "3.10.1"
[target.'cfg(target_os = "macos")'.dependencies.libc]
version = "0.2"