1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//! # Roblox Slang
//!
//! Type-safe Internationalization (i18n) tooling for Roblox experiences.
//!
//! The crate parses JSON/YAML translations, generates typed Luau helpers, writes
//! Roblox Cloud CSV files, and exposes the same pieces used by the CLI.
//!
//! ## Quick Start
//!
//! ```bash
//! roblox-slang init
//! roblox-slang build
//! roblox-slang build --watch
//! ```
//!
//! ## Library Usage
//!
//! ```no_run
//! use roblox_slang::{config, generator, parser};
//! use std::path::Path;
//!
//! # fn main() -> anyhow::Result<()> {
//! let cfg = config::load_config(Path::new("slang-roblox.yaml"))?;
//! let translations = parser::json::parse_json_file(
//! Path::new("translations/en.json"),
//! "en"
//! )?;
//! let luau_code = generator::luau::generate_luau(&translations, &cfg.base_locale)?;
//! # Ok(())
//! # }
//! ```
pub use Config;
pub use Translation;