Files
music-agregator/Cargo.toml
T
Alexander f24543f401 feat: add PostgreSQL persistence and unified sync endpoint
- Add sqlx with PostgreSQL support for database operations
- Create DbService with artist/album upsert and listing methods
- Add database schema (14 tables) in containers/init.sql
- Add library controller (GET /api/library/artists, /albums, /stats)
- Merge sync_artist + ingest into single POST /api/sync endpoint
- Support configurable sync: download (bool), store (bool), album filter
- Connect to database at startup with graceful fallback
2026-04-29 10:06:01 +02:00

38 lines
1019 B
TOML

[package]
name = "music-agregator"
version = "0.1.0"
edition = "2021"
[[bin]]
name = "music-agregator"
path = "src/main.rs"
[dependencies]
axum = "0.8"
tokio = { version = "1", features = ["rt-multi-thread", "macros"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
tower-http = { version = "0.6", features = ["cors", "trace"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
uuid = { version = "1", features = ["v4", "serde"] }
reqwest = { version = "0.12", default-features = false, features = ["json", "cookies", "rustls-tls", "multipart"] }
async-trait = "0.1"
thiserror = "2"
url = "2"
roxmltree = "0.20"
base64 = "0.22"
chrono = { version = "0.4", features = ["serde"] }
clap = { version = "4", features = ["derive"] }
sqlx = { version = "0.8", features = ["runtime-tokio", "postgres", "uuid", "chrono", "json"] }
tonic = "0.12"
prost = "0.13"
[build-dependencies]
tonic-build = "0.12"
[profile.release]
opt-level = 3
lto = true