guidon 0.1.1

Library to initialize project from templates
Documentation
# guidon

[Documentation](https://docs.rs/guidon)  

*guidon* is a french word for handlebars.  
guidon is a small library which aims to speed up project initialization with templates.  

```toml
[dependencies]
guidon = "0.1"
```


## Getting started
guidon performs templating based on [handlebars](https://handlebarsjs.com/) templating system.  
Files to be handles needs to have an `.hbs` extension. Folders can be templatized too : `{{folder/subfolder}}`

```rust
use guidon::Guidon;

fn main() {
  let mut guidon = Guidon::with_conf("path/to/template.toml").unwrap();
  guidon.apply_template("path/to/template/dir", "path/to/destination").unwrap();
}
```


The configuration file is structured as follows :
```toml
# Optional
# By default will pick the template to apply in a folder named template in the provided folder
use_template_dir = true
# Optional
# By default any missing substitution key will raise an error.
# If false, it will silently initialize the value withe an empty string.
use_strict_mode = true

# Key value pairs for template substitution
# Each occurrence of 
[variables]
test1 = "test 1"
test2 = "test 2"
```

## Minimum rust version
TODO

# License

This project is licensed under either of

 * Apache License, Version 2.0, ([LICENSE-APACHE]LICENSE-APACHE or
   http://www.apache.org/licenses/LICENSE-2.0)
 * MIT license ([LICENSE-MIT]LICENSE-MIT or
   http://opensource.org/licenses/MIT)

at your option.  

### Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in guidon by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.