Files
rustyip/Cargo.toml
T
NetworkCats 7e5a05b35a feat: add full i18n support for 14 languages with gettext PO translations
- Add i18n module with Locale enum, PO parser, and Accept-Language negotiation
- Create gettext .po translation files for en, es, de, ja, ko, id, fr, ru, pt, it, zh-Hant, zh-Hans, nl, ar
- Route HTML pages under /{lang}/ prefix using IETF language tags
- Auto-detect browser language and redirect from / to /{lang}/
- Add language selector dropdown in footer
- Localize geo names (country, city) from MMDB where available
- Add hreflang alternate links and multilingual sitemap for SEO
- Support RTL layout for Arabic
- Update integration tests for new routing structure
2026-03-04 20:11:16 +08:00

36 lines
812 B
TOML

[package]
name = "rustyip"
version = "0.1.0"
edition = "2024"
[dependencies]
axum = "0.8.8"
tokio = { version = "1.49.0", features = ["rt-multi-thread", "macros", "net", "signal", "time", "fs", "io-util"] }
askama = "0.15.4"
maxminddb = "0.27.3"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
arc-swap = "1"
reqwest = { version = "0.13", default-features = false, features = ["rustls"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
dotenvy = "0.15"
urlencoding = "2"
tokio-util = "0.7"
static-files = "0.3.1"
[build-dependencies]
static-files = "0.3.1"
[dev-dependencies]
http-body-util = "0.1"
tower = { version = "0.5", features = ["util"] }
tempfile = "3"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true
panic = "abort"