# explanation this document shall serve as the explanation for the `main.py` script. here's the inputs (on the left) and outputs of the script: ```mermaid flowchart LR f["(optional) config file path"] -->|read from passed args| b a[sync.toml / sync.json] -->|read input| b[main.py] c[local_folders] -->|read input| b b -->|rsync folders| d[remote_folder] b -->|write logs| e[folder: ~/.rsync-logs/] ``` 1. If not given explicitly, read config (`_load_raw` + `load_config`) and return `cfg` 2. Start logging 3. Fire up the thread pool 1. run `sync_folder` for each `folder` in `local_folders` against target `remote_folder` 4. Log results