Here's what CoherentGPT created (ChatGPT trained on sources of components and docs inside this repo) :
To address the issue #13 on GitHub about the contributing guide, here’s an updated version of the contributing guide that is more consistent and cohesive:
# Contributing to the Coherent Software Development System
Thank you for your interest in developing the Coherent Software Development System. This guide provides setup instructions and recommended workflow practices.
## Overview
The Coherent System consists of three key components:
- `coherent.build`: Simplifies and automates the packaging process.
- `coherent.cli`: Provides commands for building, testing, and managing projects.
- `coherent.test`: Integrates for running tests and ensuring code quality.
## Setting Up Your Development Environment
1. **Clone the Repositories:**
```bash
git clone https://github.com/coherent-oss/coherent.build.git
git clone https://github.com/coherent-oss/coherent.cli.git
git clone https://github.com/coherent-oss/coherent.test.git
```
2. **Create a Virtual Environment:**
```bash
python -m venv env
source env/bin/activate # On Windows use `env\Scripts\activate`
```
3. **Install Dependencies:**
```bash
pip install -e coherent.build -e coherent.cli -e coherent.test
```
## Workflow Practices
### Branching and Pull Requests
1. **Create a New Branch:**
```bash
git checkout -b feature/your-feature-name
```
2. **Make Changes:**
Implement your changes and ensure they include appropriate documentation.
3. **Run Tests:**
```bash
coh test
```
4. **Commit Changes:**
```bash
git add .
git commit -m "Description of changes"
```
5. **Push Changes and Create a Pull Request:**
```bash
git push origin feature/your-feature-name
```
### Testing and Quality Assurance
- **Write and Run Tests:**
Add tests in the `tests` directory and run them:
```bash
coh test
```
- **Code Quality:**
Ensure high code quality by adhering to linting and formatting guidelines. Use your preferred tools to lint and format your code.
### Documentation
- **Update Documentation:**
If your changes affect the public API or are user-facing, update `README.md` or other relevant documentation files.
- **Generate Documentation:**
```bash
coh docs
```
## Submitting Your Contribution
1. **Review:**
Review your changes and ensure they meet the project’s contribution guidelines.
2. **Create Pull Request:**
Provide a detailed description of your changes, why they were made, and any additional context.
3. **Address Feedback:**
Be prepared to make changes based on feedback from maintainers.
## Thank You
Your contributions help make the Coherent Software Development System more robust and user-friendly. If you have questions, reach out to the project maintainers. For more detailed information, refer to the [Essential Layout Guide](essential-layout.md).
This updated guide maintains coherence and clarity, ensuring that contributors have a clear understanding of the process and requirements for contributing to the Coherent Software Development System.
As with all new systems, it might be unclear how to approach contributing the best.
This issue can be resolved with a new contributing guide,
contributing.md
, where a reference example is given of:coherent.cli
,coherent.build
,coherent.cli
) further called "components" and how to store them