<a name="readme-top"></a>

<div align="center">
  <h1 align="center">Mixy</h1>

  <p align="center">
    A Highly Flexible and Customizable CLI Project Templater
    <br />
    <br />
    <a href="https://github.com/alexisbeaulieu97/Mixy/issues">Report Bug</a>
    ·
    <a href="https://github.com/alexisbeaulieu97/Mixy/issues">Request Feature</a>
  </p>
</div>

<br />
<br />

# About the project

Mixy is a CLI tool used to create projects based on one or more templates. Templates can be files, directories, git repositories, or any other supported source of content, and allow you to customize them with variables. It combines the templates into a single project directory. As a flexible tool, Mixy uses a configuration file to define a project, which can be reused since variables are replaced with values at runtime. For example, you can use Mixy to create a Flask web app project by combining multiple templates from GitHub.

> **Warning** This project is in early development and is rapidly evolving.
> This means you can expect:
> * Missing features
> * No stability guarantees
> * Bugs

# Getting Started

## Prerequisites

This project requires python 3.11 or later to be installed.

## Installation

It is recommended to use a virtual environment to install Mixy and avoid conflicts with other packages. You can create and activate a virtual environment with:

```
python -m venv env
```

To activate the virtual environment, you can use the following command depending on your platform:

* On Windows, run:
```
env\Scripts\activate.bat
```

* On Unix or MacOS, run:
```
source env/bin/activate
```

Installation can be done using pip:
```
pip install mixy
```

To verify that Mixy was installed correctly, you can run:
```
mixy --version
```

## Usage

Coming soon

# License

See the [LICENSE](LICENSE) file.

# Authors

* [Alexis Beaulieu](https://www.linkedin.com/in/alexisbeaulieu/)

<p align="right"><a href="#readme-top">back to top</a></p>
