Rustelo/templates/shared/Cargo.workspace.toml

133 lines
3.7 KiB
TOML
Raw Normal View History

# jpl-website - Rustelo CMS Implementation
# Generated by cargo rustelo v0.1.0
# Template: content-website | Asset source: local
#
# This is a workspace-based project structure suitable for CMS applications
# with separate server, client, and shared crates for optimal organization.
[workspace]
resolver = "2"
members = [
"server",
"client",
"shared"
]
# Shared dependencies for all workspace members
[workspace.dependencies]
# Rustelo Framework Dependencies
rustelo-core = { version = "{{rustelo_core_version}}", git = "https://github.com/your-org/rustelo.git", branch = "main" }
rustelo-web = { version = "{{rustelo_web_version}}", git = "https://github.com/your-org/rustelo.git", branch = "main" }
rustelo-content = { version = "{{rustelo_content_version}}", git = "https://github.com/your-org/rustelo.git", branch = "main" }
rustelo-auth = { version = "{{rustelo_auth_version}}", git = "https://github.com/your-org/rustelo.git", branch = "main" }
# Leptos Framework Stack
leptos = { version = "0.8.6", features = ["ssr"] }
leptos_axum = { version = "0.8.5" }
leptos_router = { version = "0.8.5" }
leptos_meta = { version = "0.8.5" }
# Server Dependencies
axum = { version = "0.8.4", features = ["macros", "tracing"] }
tower = { version = "0.5.2", features = ["util"] }
tower-http = { version = "0.6.6", features = ["fs", "cors", "compression"] }
tokio = { version = "1.47.1", features = ["rt-multi-thread", "macros", "signal", "fs", "net"] }
# Serialization & Data
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
# Logging and Observability
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
# Error Handling
anyhow = "1.0"
thiserror = "2.0"
# Utilities
uuid = { version = "1.18", features = ["v4", "serde"] }
chrono = { version = "0.4", features = ["serde"] }
# Content Management Dependencies
pulldown-cmark = { version = "0.12", features = ["simd"] }
gray_matter = "0.2"
comrak = { version = "0.36", features = ["syntect"] }
# Client-side Dependencies
web-sys = { version = "0.3.77" }
wasm-bindgen = "0.2.100"
console_error_panic_hook = "0.1"
# Local crate references
jpl_website-server = { path = "server" }
jpl_website-client = { path = "client" }
jpl_website-shared = { path = "shared" }
[profile.release]
# Optimized production builds
codegen-units = 1
lto = true
opt-level = 'z' # Optimize for size
panic = 'abort' # Smaller binary
strip = true # Remove debug symbols
[profile.dev]
# Faster development builds
opt-level = 0
debug = true
incremental = true
# Leptos Configuration for Development Server
[[workspace.metadata.leptos]]
name = "jpl-website"
bin-package = "jpl_website-server"
lib-package = "jpl_website-client"
bin-target = "jpl-website-server"
# Output configuration
output-name = "jpl-website"
site-root = "target/site"
site-pkg-dir = "pkg"
assets-dir = "public"
# Development server
site-addr = "127.0.0.1:{{dev_port}}"
reload-port = {{reload_port}}
# Build configuration
env = "DEV"
bin-features = ["ssr"]
lib-features = ["hydrate"]
watch = true
browser-open = true
# Framework Update Configuration
[workspace.metadata.rustelo]
# Framework version tracking for safe updates
framework_version = "0.1.0"
template_variant = "content-website"
config_version = "1.0"
generation_timestamp = "2025-10-28T18:46:17.145459+00:00"
# Workspace structure
project_type = "cms-workspace"
crates = ["server", "client", "shared"]
# Files that can be safely regenerated during updates
generated_files = [
"Cargo.toml",
"justfile",
"package.json",
"unocss.config.ts"
]
# Files that should never be overwritten (user code)
protected_files = [
"server/src/**/*.rs",
"client/src/**/*.rs",
"shared/src/**/*.rs",
"content/**/*",
"public/**/*",
"local-tasks.just"
]