# Contributing to IronCalc

Whether you are a seasoned developer or a rookie, welcome to IronCalc! 

🎉 We appreciate your interest in contributing to our project.

Before starting any work it is best if you get in touch to make sure your work is relevant.

Please be patient, I am only one and this is a side project.

---

## 🛠 Changes to the main repo

If are comfortable working with GitHub and Git, the following steps should be straightforward. For more general information visit [GitHub Docs](https://docs.github.com/en) and [Git Documentation](https://git-scm.com/doc). 

1. **Fork the repository**
   Start by forking the repository to your own GitHub account. You can do this by clicking the "Fork" button on the top right of the repository page.

2. **Clone the original repository**
   Clone the original repository to your local machine:
   ```bash
   git clone https://github.com/ironcalc/IronCalc.git
   cd IronCalc
   ```


3. **Add your fork as a remote**
    Add your forked repository as a remote named fork:

    ```bash
    git remote add fork https://github.com/<your-username>/IronCalc.git
    ```
4. **Create a new branch**
    Always create a new branch for your changes to keep your work isolated:

    ```bash
    git checkout -b your-feature-name
    ```
5. **Make changes**
    Implement your changes, improvements, or bug fixes. Make sure to follow any coding style or project-specific guidelines.

6. **Commit your changes**
    Write clear and concise commit messages:

    ```bash
    git add .
    git commit -m "Brief description of your changes"
    ```
7. **Push to your fork**
    Push your branch to your forked repository:
    ```bash
    git push fork your-feature-name
    ````

8. **Create a Pull Request (PR)**
   Follow the steps on the terminal or go to the orig IronCalc repository, and click on "New Pull Request."
   Ensure your PR has a clear title and description explaining the purpose of your changes.

Always start from the main branch in a clean state. `git pull` will generally get the lastest changes form the original repo.

You should make sure that your changes are properly tested.

# 🤝 Community and Support

Feel free to reach out if you have questions or need help. Via GitHub, email, our discord server or bluesky.

* Open an issue to report a bug or discuss a feature before implementing it.
* Engage with the community to share ideas or seek guidance.

Note that not all contributors need to be coding. To contribute testing, bug reports, typos, ideas of all kinds, you can just send us an email.

Thank you for your contributions! 💪 Together, we can make IronCalc even better.