diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..e650491 --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,29 @@ +[workspace] +members = [ + "crates/api", + "crates/common", + "crates/domain", + "crates/infrastructure/persistence", + "crates/infrastructure/ug-parser", +] +resolver = "2" + +[workspace.dependencies] +anyhow = "1.0.102" +reqwest = "0.13.2" +serde = { version = "1.0.228", features = ["derive"] } +serde_json = "1.0.149" +thiserror = "2.0.18" +tokio = { version = "1.51.0", features = ["full"] } +tracing = "0.1.44" +tracing-subscriber = { version = "0.3.23", features = ["env-filter"] } +uuid = { version = "1.23.0", features = ["v4"] } +rand = "0.10.0" +sqlx = { version = "0.8.6", features = ["runtime-tokio-rustls"] } +async-trait = "0.1.89" +scraper = "0.23" + +[profile.release] +strip = true +codegen-units = 1 +opt-level = 3 diff --git a/crates/infrastructure/ug-parser/Cargo.toml b/crates/infrastructure/ug-parser/Cargo.toml new file mode 100644 index 0000000..c3a7769 --- /dev/null +++ b/crates/infrastructure/ug-parser/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "ug-parser" +version = "0.1.0" +edition = "2024" + +[dependencies] +domain = { path = "../../domain" } +anyhow = { workspace = true } +thiserror = { workspace = true } +tokio = { workspace = true } +reqwest = { workspace = true } +scraper = { workspace = true } +async-trait = { workspace = true } diff --git a/crates/infrastructure/ug-parser/src/fetcher.rs b/crates/infrastructure/ug-parser/src/fetcher.rs new file mode 100644 index 0000000..a3e51df --- /dev/null +++ b/crates/infrastructure/ug-parser/src/fetcher.rs @@ -0,0 +1 @@ +pub struct UgTabFetcher; diff --git a/crates/infrastructure/ug-parser/src/lib.rs b/crates/infrastructure/ug-parser/src/lib.rs new file mode 100644 index 0000000..6d16424 --- /dev/null +++ b/crates/infrastructure/ug-parser/src/lib.rs @@ -0,0 +1,5 @@ +pub mod fetcher; +pub mod parser; + +pub use fetcher::UgTabFetcher; +pub use parser::UgHtmlParser; diff --git a/crates/infrastructure/ug-parser/src/parser.rs b/crates/infrastructure/ug-parser/src/parser.rs new file mode 100644 index 0000000..878a83b --- /dev/null +++ b/crates/infrastructure/ug-parser/src/parser.rs @@ -0,0 +1 @@ +pub struct UgHtmlParser;