Files
podcastic/backend/Cargo.toml
T
MichaelandClaude Opus 5.5 1028b7968c feat: rewrite backend in Rust (axum)
Replace the Node/Express backend with a Rust implementation that keeps
the same REST API, MongoDB collections and Redis cache keys, so existing
users, subscriptions and progress keep working.

- axum + mongodb + redis, bcrypt and HS256 JWT compatible with old data
- RSS parsing, iTunes discovery/trending, background sync (1h / 4h)
- Docker image now builds a static Rust binary on debian-slim
- CI runs cargo tests before publishing the image
- compose uses pull_policy: always so a restart picks up the new image

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 09:34:33 +02:00

32 lines
994 B
TOML

[package]
name = "podcastic"
version = "2.0.0"
edition = "2021"
description = "Podcastic - Multi-user podcast streaming application backend"
license = "MIT"
[dependencies]
anyhow = "1.0.86"
axum = "0.7.5"
bcrypt = "0.15.1"
bson = { version = "2.11.0", features = ["chrono-0_4"] }
chrono = { version = "0.4.38", features = ["serde"] }
futures = "0.3.30"
jsonwebtoken = "9.3.0"
mongodb = "2.8.2"
redis = { version = "0.25.4", features = ["tokio-comp", "connection-manager"] }
reqwest = { version = "0.12.5", default-features = false, features = ["json", "rustls-tls", "gzip", "brotli", "deflate"] }
rss = "2.0.8"
serde = { version = "1.0.204", features = ["derive"] }
serde_json = "1.0.120"
tokio = { version = "1.38.0", features = ["full"] }
tower-http = { version = "0.5.2", features = ["fs", "cors", "set-header", "trace"] }
tracing = "0.1.40"
tracing-subscriber = { version = "0.3.18", features = ["env-filter"] }
[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 1
strip = true