Ctrl K
ComunidadGuías…

CONTRIBUTING.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# Contributing guide

## Overview

I welcome contributions to the project. Follow these guidelines to help ensure your contributions are accepted and maintain the project's quality.

This project is using [Task](https://taskfile.dev/) as the task runner. Refer to the `Taskfile.yml` or run `task -l` once installed.

## Prepare your environment

1. **Install ASDF**
   * Follow [installation instructions](https://asdf-vm.com/guide/getting-started.html) to setup `asdf`.

2. **Plugin installation**
   * Install the needed plugins (listed in `.tool-versions`):

     ```bash
     asdf plugin add task
     asdf plugin add git-cliff
     ```

3. **Install tools**
   * Install all tools using versions in `.tool-versions`:

     ```bash
     asdf install
     ```

You're ready to continue !

## Getting Started

1. **Discuss changes**
   * Before submitting new changes, discuss them by submitting [a new issue](https://github.com/bigbrozer/comfyture/issues/new).

2. **Fork the Repository:**
   * Go to the [repository on GitHub](https://github.com/bigbrozer/comfyture).
   * Click on the "Fork" button to create a copy of the repository in your GitHub account.

3. **Clone the Forked Repository:**
   * Open your terminal or command prompt.
   * Clone the forked repository to your local machine:

     ```bash
     git clone <fork_url>
     cd your-repo
     ```

4. **Create a New Branch:**
   * Create a new branch for your feature or bug fix:

     ```bash
     git checkout -b feature/your-branch-name
     ```

5. **Make Your Changes:**
   * Make your changes to the project files.

6. **Commit Your Changes:**
   * Add your changes to the staging area:

     ```bash
     git add .
     ```

   * Commit your changes with a [conventional commit](https://www.conventionalcommits.org/en/v1.0.0/#summary) message:

     ```bash
     git commit -m "feat: my new feature"
     ```

7. **Push Your Changes:**
   * Push your changes to your forked repository:

     ```bash
     git push origin feature/your-branch-name
     ```

## Test your changes

1. **Build the image locally**
   * Run `task build` to launch the building image process locally. It will end with a local docker image tagged `bigbrozer/comfyture:latest`.

2. **Run the stack locally**
   * Run `task tests` to execute a local ComfyUI instance using docker compose.
   * Open your browser on [http://localhost:8188](http://localhost:8188).

## Submitting a Pull Request

1. **Create a Pull Request:**
   * Go to your forked repository.
   * Click on the "Pull Requests" tab.
   * Click on "New Pull Request".
   * Select the base branch as `main`.
   * Select the branch you created (`feature/your-branch-name`).
   * Write a clear and concise title for your pull request and provide a detailed description of your changes.

2. **Review and Edit:**
   * I will review your pull request. I may provide feedback or request changes.
   * Edit your changes as needed and push them to your branch:

     ```bash
     git push origin feature/your-branch-name
     ```

3. **Resolve Conflicts:**
   * If there are conflicts, resolve them and push the changes again:

     ```bash
     git push origin feature/your-branch-name
     ```

4. **Merge the Pull Request:**
   * Once the pull request is approved and all conflicts are resolved, I will merge it into the `main` branch.

## Contributing Guidelines

* **Keep Changes Small:** Keep each pull request focused on a single change or fix.
* **Document Your Changes:** If you introduce new features or changes, document them in the project's README.
* **Test Your Changes:** Ensure that your changes do not break existing functionality and that all tests pass.
* **Respect Others:** Be respectful and considerate of other contributors and author.

## Releasing

Releases use [CalVer](https://calver.org/) `vYY.M.MICRO` (`MICRO` is reset every month), computed by `scripts/next-version.sh`:

1. `task preview-changelog` to preview the next changelog.
2. `task bump` to update `metadata.env` and `CHANGELOG.md`, and commit them.
3. `task tag` to create the annotated tag, then `git push origin --tags` to trigger the CD workflow.

## License

By contributing to this project, you agree to the terms of the [MIT License](https://github.com/bigbrozer/comfyture/blob/main/LICENSE).