[package]
edition = "2021"
name = "morpion-solitaire"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Morpion Solitaire: a GUI + headless solver (NRPA, perturbation, exhaustive) for record hunting, with a WebAssembly build."
homepage = "https://morpion-solitaire.io"
readme = "README.md"
keywords = [
"morpion-solitaire",
"puzzle",
"solver",
"nrpa",
"egui",
]
categories = [
"games",
"mathematics",
"wasm",
]
license = "GPL-3.0-or-later"
repository = "https://github.com/sjourdois/morpion-solitaire"
[features]
default = ["gui"]
gui = [
"dep:egui",
"dep:eframe",
"dep:egui_extras",
"dep:rfd",
"dep:arboard",
"dep:unic-langid",
"dep:rust-embed",
"dep:i18n-embed",
"dep:i18n-embed-fl",
]
neural = [
"dep:candle-core",
"dep:candle-nn",
]
neural-cuda = [
"neural",
"candle-core/cuda",
"candle-nn/cuda",
]
neural-metal = [
"neural",
"candle-core/metal",
"candle-nn/metal",
]
[lib]
name = "morpion_solitaire"
path = "src/lib.rs"
[[bin]]
name = "morpion-solitaire"
path = "src/main.rs"
[[example]]
name = "gen_record_artifacts"
path = "examples/gen_record_artifacts.rs"
[dependencies.base64]
version = "0.22"
[dependencies.eframe]
version = "0.34"
features = [
"default_fonts",
"glow",
"wayland",
"x11",
"persistence",
]
optional = true
default-features = false
[dependencies.egui]
version = "0.34"
optional = true
[dependencies.egui_extras]
version = "0.34"
features = ["image"]
optional = true
[dependencies.i18n-embed]
version = "0.16"
features = ["fluent-system"]
optional = true
[dependencies.i18n-embed-fl]
version = "0.10"
optional = true
[dependencies.log]
version = "0.4"
[dependencies.miniz_oxide]
version = "0.9"
[dependencies.morpion-solitaire-record]
version = "0.1"
[dependencies.morpion-solitaire-records]
version = "0.1"
[dependencies.rand]
version = "0.10"
[dependencies.rayon]
version = "1"
[dependencies.rust-embed]
version = "8"
features = ["debug-embed"]
optional = true
[dependencies.rustc-hash]
version = "2"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.unic-langid]
version = "0.9"
features = ["macros"]
optional = true
[dependencies.web-time]
version = "1"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.arboard]
version = "3"
optional = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.candle-core]
version = "0.10.2"
optional = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.candle-nn]
version = "0.10.2"
optional = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.clap]
version = "4"
features = ["derive"]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.ctrlc]
version = "3"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.env_logger]
version = "0.11"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.num_cpus]
version = "1"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.resvg]
version = "0.47"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rfd]
version = "0.17"
features = [
"xdg-portal",
"pollster",
]
optional = true
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rustix]
version = "1"
features = ["process"]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.sys-locale]
version = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2"
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3"
features = [
"Blob",
"BlobPropertyBag",
"Url",
"Window",
"Document",
"Element",
"Node",
"HtmlElement",
"HtmlAnchorElement",
]