[package]
name = "moltendb-core"
version = "0.3.0-beta.4"
edition = "2024"
authors = ["Maximilian Both <maximilian.both27@outlook.com>"]
description = "MoltenDB core engine — in-memory DashMap storage, WAL persistence, query evaluation. No HTTP, no auth."
license-file = "LICENSE.md"
repository = "https://github.com/maximilian27/MoltenDB"
keywords = ["nosql", "embedded", "local-first", "wasm", "json"]
categories = ["database-implementations", "wasm", "data-structures"]


[lib]
crate-type = ["rlib"]

[dependencies]
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.149"
dashmap = "6.1.0"
uuid = { version = "1.22", features = ["v7", "serde"] }
regex = "1.12.3"
tracing = "0.1.44"
tokio = { version = "1.50.0", default-features = false, features = ["sync", "time", "macros"] }
web-time = "1.0.0"

[target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
js-sys = "0.3"

[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3"
features = [
    "WorkerGlobalScope",
    "FileSystemDirectoryHandle",
    "FileSystemFileHandle",
    "FileSystemSyncAccessHandle",
    "FileSystemGetFileOptions",
    "FileSystemReadWriteOptions"
]

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
bincode = "1.3.3"
memmap2 = "0.9"
tokio = { version = "1.49.0", features = ["full"] }
base64 = "0.22"
chacha20poly1305 = "0.10"
rand_core = { version = "0.6", features = ["std"] }
argon2 = "0.5"

