Take the pain out of keeping all your calendars together
1[package]
2name = "calpoll"
3version = "0.1.0"
4edition = "2024"
5
6[lib]
7crate-type = ["cdylib", "rlib"]
8
9[dependencies]
10leptos = { version = "0.8.0" }
11leptos_router = { version = "0.8.0" }
12axum = { version = "0.8.0", optional = true }
13console_error_panic_hook = { version = "0.1", optional = true }
14leptos_axum = { version = "0.8.0", optional = true }
15leptos_meta = { version = "0.8.0" }
16tokio = { version = "1", features = ["rt-multi-thread"], optional = true }
17wasm-bindgen = { version = "=0.2.100", optional = true }
18sqlx = { version = "0.8.6", features = ["runtime-tokio", "tls-native-tls", "postgres", "uuid", "macros", "tls-rustls-ring-webpki"], optional = true }
19uuid = { version = "1.18.1", features = ["js", "serde", "v4"], optional = true }
20anyhow = "1.0.100"
21reqwest = { version = "0.12.24", features = ["rustls-tls-webpki-roots", "charset", "http2"], optional = true }
22icalendar = { version = "0.17.5", features = ["parser", "serde", "chrono-tz", "time",], optional = true }
23fast-dav-rs = { version = "0.1.0", optional = true }
24rustls = { version = "0.23.34", features = ["ring"], optional = true }
25
26[features]
27hydrate = [
28 "leptos/hydrate",
29 "dep:console_error_panic_hook",
30 "dep:wasm-bindgen",
31]
32ssr = [
33 "dep:axum",
34 "dep:fast-dav-rs",
35 "dep:icalendar",
36 "dep:leptos_axum",
37 "dep:reqwest",
38 "dep:rustls",
39 "dep:sqlx",
40 "dep:tokio",
41 "dep:uuid",
42 "leptos/ssr",
43 "leptos_meta/ssr",
44 "leptos_router/ssr",
45]
46
47# Defines a size-optimized profile for the WASM bundle in release mode
48[profile.wasm-release]
49inherits = "release"
50opt-level = 'z'
51lto = true
52codegen-units = 1
53panic = "abort"
54
55[package.metadata.leptos]
56# The name used by wasm-bindgen/cargo-leptos for the JS/WASM bundle. Defaults to the crate name
57output-name = "calpoll"
58
59# The site root folder is where cargo-leptos generate all output. WARNING: all content of this folder will be erased on a rebuild. Use it in your server setup.
60site-root = "target/site"
61
62# The site-root relative folder where all compiled output (JS, WASM and CSS) is written
63# Defaults to pkg
64site-pkg-dir = "pkg"
65
66# [Optional] The source CSS file. If it ends with .sass or .scss then it will be compiled by dart-sass into CSS. The CSS is optimized by Lightning CSS before being written to <site-root>/<site-pkg>/app.css
67style-file = "style/main.scss"
68# Assets source dir. All files found here will be copied and synchronized to site-root.
69# The assets-dir cannot have a sub directory with the same name/path as site-pkg-dir.
70#
71# Optional. Env: LEPTOS_ASSETS_DIR.
72assets-dir = "public"
73
74# The IP and port (ex: 127.0.0.1:3000) where the server serves the content. Use it in your server setup.
75site-addr = "127.0.0.1:3000"
76
77# The port to use for automatic reload monitoring
78reload-port = 3001
79
80# [Optional] Command to use when running end2end tests. It will run in the end2end dir.
81# [Windows] for non-WSL use "npx.cmd playwright test"
82# This binary name can be checked in Powershell with Get-Command npx
83end2end-cmd = "npx playwright test"
84end2end-dir = "end2end"
85
86# The browserlist query used for optimizing the CSS.
87browserquery = "defaults"
88
89# The environment Leptos will run in, usually either "DEV" or "PROD"
90env = "DEV"
91
92# The features to use when compiling the bin target
93#
94# Optional. Can be over-ridden with the command line parameter --bin-features
95bin-features = ["ssr"]
96
97# If the --no-default-features flag should be used when compiling the bin target
98#
99# Optional. Defaults to false.
100bin-default-features = false
101
102# The features to use when compiling the lib target
103#
104# Optional. Can be over-ridden with the command line parameter --lib-features
105lib-features = ["hydrate"]
106
107# If the --no-default-features flag should be used when compiling the lib target
108#
109# Optional. Defaults to false.
110lib-default-features = false
111
112# The profile to use for the lib target when compiling for release
113#
114# Optional. Defaults to "release".
115lib-profile-release = "wasm-release"