mod data {
pub mod formats;
}
mod util {
pub mod templating;
}
const APP_NAME: &str = "livejrnl-rs";
fn main() {
let mut jrnl_json: String = String::new();
if let Some(pipe) = read_pipe::read_pipe() {
jrnl_json.push_str(&pipe);
}
println!("{:#?}", jrnl_json);
let config_data = load_config();
match config_data {
Ok(config_data) => {
println!("{:#?}", config_data);
let template_files = util::templating::get_templates(config_data.template.clone());
println!("{:?}", template_files);
let html = util::templating::render_html(config_data, &template_files);
println!("{}", html);
},
Err(error) => println!("{:#?}", error)
};
}
fn load_config() -> Result<data::formats::RenderConfig, confy::ConfyError> {
let cfg: data::formats::RenderConfig = confy::load(APP_NAME, "config")?;
Ok(cfg)
}