commit 7c90380d14d4aae17da22e95ff674b5c1d33f2af Author: lashman Date: Thu Mar 13 16:23:14 2025 +0200 the generator skeleton diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..f1cab0c --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,23 @@ +[workspace] +members = ["cruciverb-core", "cruciverb-cli", "cruciverb-server"] +resolver = "2" + +[workspace.package] +edition = "2021" +license = "CC0-1.0" + +[workspace.dependencies] +cruciverb-core = { path = "cruciverb-core" } +serde = { version = "1.0", features = ["derive"] } +serde_json = "1.0" +thiserror = "2.0" +rand = "0.9" +tracing = "0.1" +tracing-subscriber = { version = "0.3", features = ["env-filter"] } +axum = { version = "0.8", features = ["macros", "ws", "multipart"] } +tokio = { version = "1", features = ["full"] } +tower-http = { version = "0.6", features = ["cors", "fs", "timeout"] } +uuid = { version = "1", features = ["v4", "serde"] } +rusqlite = { version = "0.33", features = ["bundled"] } +chrono = { version = "0.4", features = ["serde"] } +reqwest = { version = "0.12", features = ["blocking"] } diff --git a/README.md b/README.md new file mode 100644 index 0000000..2b96904 --- /dev/null +++ b/README.md @@ -0,0 +1,11 @@ +# cruciverb + +A crossword puzzle engine that generates grids, fills them with real words, and turns them into IPUZ and PUZ files you can publish anywhere. + +## Status + +Very early. The fill works on small and mid-size grids. Exports are being shaped up. + +## How to run + +cargo run -p cruciverb-cli -- generate --width 15 --height 15 diff --git a/cruciverb-core/Cargo.toml b/cruciverb-core/Cargo.toml new file mode 100644 index 0000000..055bbfd --- /dev/null +++ b/cruciverb-core/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "cruciverb-core" +version = "0.1.0" +edition.workspace = true +license.workspace = true + +[dependencies] +serde = { workspace = true } +serde_json = { workspace = true } +thiserror = { workspace = true } +rand = { workspace = true } +tracing = { workspace = true } +rusqlite = { workspace = true }