# skellige
[![license-badge](https://img.shields.io/crates/l/fungus.svg)](https://opensource.org/licenses/MIT)
[![build](https://github.com/phR0ze/skellige/workflows/build/badge.svg?branch=main)](https://github.com/phR0ze/skellige/actions)
[![codecov](https://codecov.io/gh/phR0ze/skellige/branch/main/graph/badge.svg?token=BT1GhAqKvc)](https://codecov.io/gh/phR0ze/skellige)
[![crates.io](https://img.shields.io/crates/v/skellige.svg)](https://crates.io/crates/skellige)
[![Minimum rustc](https://img.shields.io/badge/rustc-1.30+-lightgray.svg)](https://github.com/phR0ze/skellige#rustc-requirements)

***Track and manipulate your source in a programmatic way***

***skellige*** wraps the venerable [`git2`](https://crates.io/crates/git2) crate providing cli
stylized progress output for common functions like cloning up updating repositories. `skellige`
introduces a notion of repo groups providing stylized progress for multiple repos at once.

### Quick links
* [Usage](#usage)
  * [Rustc requirments](#rustc-requirements)
  * [Clone](#clone)
  * [Update](#update)
* [Contribute](#contribute)
  * [Git-Hook](#git-hook)
* [License](#license)
  * [Contribution](#contribution)
* [Backlog](#backlog)
* [Changelog](#changelog)

## Usage <a name="usage"/></a>
#### Requires rustc >= 1.30 <a name="rustc-requirements"/></a>
This minimum rustc requirement is driven by the enhancemnts made to [Rust's `std::error::Error`
handling improvements](https://doc.rust-lang.org/std/error/trait.Error.html#method.source)

### Clone <a name="clone"/></a>
TBD

### Update <a name="update"/></a>
TBD

## Contribute <a name="Contribute"/></a>
Pull requests are always welcome. However understand that they will be evaluated purely on whether
or not the change fits with my goals/ideals for the project.

### Git-Hook <a name="git-hook"/></a>
Enable the git hooks to have automatic version increments
```bash
cd ~/Projects/skellige
git config core.hooksPath .githooks
```

## License <a name="license"/></a>
This project is licensed under either of:
 * MIT license [LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT
 * Apache License, Version 2.0 [LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0

### Contribution <a name="contribution"/></a>
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in
this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without
any additional terms or conditions.

---

## Backlog <a name="backlog"/></a>
* Document usage
* Document examples
* Add rust docs
* Determine minimum rustc and update badge

## Changelog <a name="changelog"/></a>
* 12/30/2020
  * Updating documentation a little
* 12/28/2020
  * Use fungus as a dependency
