# C.R.S. [![Rust](https://github.com/0xMRTT/crs/actions/workflows/rust.yml/badge.svg)](https://github.com/0xMRTT/crs/actions/workflows/rust.yml) [![rust-clippy analyze](https://github.com/0xMRTT/crs/actions/workflows/rust-clippy.yml/badge.svg)](https://github.com/0xMRTT/crs/actions/workflows/rust-clippy.yml) [![GitHub issues](https://img.shields.io/github/issues/0xMRTT/crs)](https://github.com/0xMRTT/crs/issues) [![GitHub license](https://img.shields.io/github/license/0xMRTT/crs)](https://github.com/0xMRTT/crs/blob/main/LICENSE) ![Matrix](https://img.shields.io/matrix/crs:matrix.org) Create a new project from a template ## Why another project generator ? It's inspired of `cookiecutter` (#20). It's written in rust for safety and rapidity. CRS can run hooks before and after (#21) the generation. CRS use handelbars template language. ## Installation ### As binary You can download it on release page and simply run the binary ``` wget https://github.com/0xMRTT/crs/ chmod +x crs ./crs ``` ### From source ``` git clone https://github.com/0xMRTT/crs.git cd crs cargo b ``` And finally run crs ``` ./target/debug/crs ``` ## Usage ``` $ crs https://github.com/0xMRTT/rust-template $ crs -h crs 0.1.0 USAGE: crs [OPTIONS] [TEMPLATE_URL] ARGS: Optional name to operate on OPTIONS: -c, --config Sets a custom config file -h, --help Print help information -l, --list-installed List installed template -t, --to Where CRS will generate the new project -V, --version Print version information ``` ## Thanks This project is inspired to this awesome projects: * cookiecutter And thanks to the creators and contributors of this awesome rust crates: * handlebars * serde_json * serde_derive * serde * env_logger * git2 * clap * url * walkdir * platform-dirs * chrono * inquire * regex * execute * fs_extra