|
|
|
|
@ -4,22 +4,23 @@ use serde_json::Value;
|
|
|
|
|
fn main() -> std::io::Result<()> {
|
|
|
|
|
let json_string = fs::read_to_string("boards/coding.json")?;
|
|
|
|
|
let output_dir = "output";
|
|
|
|
|
fs::create_dir(output_dir);
|
|
|
|
|
fs::create_dir(&output_dir)?;
|
|
|
|
|
|
|
|
|
|
let json_data: Value = serde_json::from_str(&json_string).unwrap();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let board_dir = output_dir.to_owned() + "/" + json_data["name"].as_str().unwrap();
|
|
|
|
|
fs::create_dir(&board_dir).expect("unable to create dir");
|
|
|
|
|
let board_dir = format!("{}/{}", &output_dir, &json_data["name"]);
|
|
|
|
|
fs::create_dir(&board_dir)?;
|
|
|
|
|
|
|
|
|
|
if let Value::Array(lists) = &json_data["lists"]{
|
|
|
|
|
if let Value::Array(cards) = &json_data["cards"]{
|
|
|
|
|
for list in lists {
|
|
|
|
|
fs::create_dir(board_dir.clone() + "/" + list["name"].as_str().unwrap())?;
|
|
|
|
|
let list_dir = format!("{}/{}", &board_dir, list["name"]);
|
|
|
|
|
fs::create_dir(&list_dir)?;
|
|
|
|
|
for card in cards {
|
|
|
|
|
if card["idList"] == list["id"]{
|
|
|
|
|
println!("{}: {}", list["name"], card["name"]);
|
|
|
|
|
let mut file = fs::File::create(board_dir.clone() + "/" + list["name"].as_str().unwrap() + "/" + card["name"].as_str().unwrap() + ".md");
|
|
|
|
|
let file_path = format!("{}/{}/{}.md", &board_dir, &list_dir, &card["name"]);
|
|
|
|
|
let mut _file = fs::File::create(&file_path);
|
|
|
|
|
//file.write_all(b"#" + card["name"].as_str().unwrap());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|