Skip to main content

max / multithreaded

2.5 KB · 99 lines History Blame Raw
1 [workspace]
2 resolver = "2"
3 members = [
4 "crates/mt-core",
5 "crates/mt-db",
6 ]
7 default-members = ["."]
8
9 [workspace.package]
10 version = "0.3.3"
11 edition = "2024"
12 license-file = "LICENSE"
13
14 [workspace.dependencies]
15 # Core
16 tokio = { version = "1", features = ["rt-multi-thread", "sync", "time", "macros", "signal"] }
17 thiserror = "2"
18 serde = { version = "1", features = ["derive"] }
19 serde_json = "1"
20 tracing = "0.1"
21 tracing-subscriber = { version = "0.3", features = ["env-filter"] }
22
23 # Web
24 axum = { version = "0.8", features = ["ws", "multipart"] }
25 tower = "0.5"
26 tower-http = { version = "0.6", features = ["fs", "cors", "trace", "set-header"] }
27 tower-sessions = "0.14"
28 tower-sessions-sqlx-store = { version = "0.15", features = ["postgres"] }
29
30 # HTTP client / crypto
31 reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] }
32 sha2 = "0.10"
33 hmac = "0.12"
34 base64 = "0.22"
35 rand = "0.8"
36
37 # S3 storage
38 s3-storage = { path = "../../Shared/s3-storage" }
39
40 # Database
41 sqlx = { version = "0.8", features = ["runtime-tokio", "postgres", "chrono", "uuid"] }
42
43 # Rate limiting
44 tower_governor = "0.6"
45 governor = "0.8"
46
47 # Utilities
48 chrono = { version = "0.4", features = ["serde"] }
49 uuid = { version = "1", features = ["v4", "serde"] }
50 pulldown-cmark = "0.12"
51 askama = "0.13"
52
53 # Internal crates
54 mt-core = { path = "crates/mt-core" }
55 mt-db = { path = "crates/mt-db" }
56 tagtree = { path = "../../Shared/tagtree" }
57
58 [package]
59 name = "multithreaded"
60 version.workspace = true
61 edition.workspace = true
62
63 [dependencies]
64 mt-core = { workspace = true }
65 mt-db = { workspace = true }
66 tokio = { workspace = true }
67 axum = { workspace = true }
68 tower = { workspace = true }
69 tower-http = { workspace = true }
70 tracing = { workspace = true }
71 tracing-subscriber = { workspace = true }
72 serde = { workspace = true }
73 serde_json = { workspace = true }
74 askama = { workspace = true }
75 chrono = { workspace = true }
76 uuid = { workspace = true }
77 sqlx = { workspace = true }
78 tower-sessions = { workspace = true }
79 tower-sessions-sqlx-store = { workspace = true }
80 reqwest = { workspace = true }
81 sha2 = { workspace = true }
82 base64 = { workspace = true }
83 rand = { workspace = true }
84 pulldown-cmark = { workspace = true }
85 docengine = { path = "../../Shared/docengine", features = ["mentions", "quotes"] }
86 tagtree = { workspace = true }
87 tower_governor = { workspace = true }
88 governor = { workspace = true }
89 s3-storage = { workspace = true }
90 dotenvy = "0.15"
91 hex = "0.4"
92 hmac = { workspace = true }
93 regex-lite = "0.1"
94 urlencoding = "2"
95 time = "0.3"
96
97 [dev-dependencies]
98 http-body-util = "0.1"
99